Split Docker tutorials into basis, orchestration and dockerfiles
This commit is contained in:
parent
2d364556a2
commit
2c48fa7942
36 changed files with 477 additions and 188 deletions
141
tutorial/docker-orchestration/check.sh
Executable file
141
tutorial/docker-orchestration/check.sh
Executable file
|
@ -0,0 +1,141 @@
|
|||
#!/bin/sh
|
||||
|
||||
note_init() {
|
||||
NOTE=0
|
||||
echo -n $@
|
||||
}
|
||||
|
||||
note() {
|
||||
NOTE=$(($NOTE + $1))
|
||||
echo -n ,$@
|
||||
}
|
||||
|
||||
for LOGIN in $@
|
||||
do
|
||||
note_init $LOGIN
|
||||
pushd $LOGIN > /dev/null
|
||||
|
||||
# Questions
|
||||
|
||||
if grep -i "go" questions.txt 2> /dev/null > /dev/null; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
if grep -E -i "(linkage|static|statique|liaison)" questions.txt 2> /dev/null > /dev/null; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
|
||||
# Exercice InfluxDB
|
||||
|
||||
DOCKERFILE_influxdb="influxdb/Dockerfile"
|
||||
if ! [ -f "${DOCKERFILE_influxdb}" ] && [ -f "influxdb/dockerfile" ]; then
|
||||
DOCKERFILE_influxdb="influxdb/dockerfile"
|
||||
fi
|
||||
|
||||
NBRUN=$(grep -E -i ^RUN "${DOCKERFILE_influxdb}" 2> /dev/null | wc -l)
|
||||
if [ $NBRUN -le 2 ] && [ $NBRUN -gt 0 ]; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
if grep -E -i '^EXPOSE.*8083' "${DOCKERFILE_influxdb}" 2> /dev/null > /dev/null && grep -E -i '^EXPOSE.*8086' "${DOCKERFILE_influxdb}" 2> /dev/null > /dev/null && \
|
||||
grep -i ^EXPOSE "${DOCKERFILE_influxdb}" 2> /dev/null | sed "s/ 8083//g;s/ 8086//g" | grep -E '^EXPOSE[[:space:]]*$' > /dev/null; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
if grep -E -i '^MAINTAINER[[:space:]]' "${DOCKERFILE_influxdb}" 2> /dev/null > /dev/null; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
if grep -E -i '^(ADD|COPY)[[:space:]]' "${DOCKERFILE_influxdb}" 2> /dev/null > /dev/null; then
|
||||
CONFIGFILE=$(grep -E -i '^(ADD|COPY)[[:space:]]' "${DOCKERFILE_influxdb}" | sed -r 's/^(COPY|ADD)[[:space:]]+([^[:space:]]*).*$/\2/')
|
||||
if [ -f "influxdb/${CONFIGFILE}" ]; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
|
||||
# Exercice mymonitoring
|
||||
|
||||
DOCKERFILE_mymonitoring="mymonitoring/Dockerfile"
|
||||
if grep -E -i '^FROM[[:space:]]' "${DOCKERFILE_mymonitoring}" 2> /dev/null > /dev/null; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
if grep -E -i '^ENV[[:space:]]' "${DOCKERFILE_mymonitoring}" 2> /dev/null > /dev/null; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
CONFIGFILE=$(grep -E -i '^(ADD|COPY)[[:space:]]' "${DOCKERFILE_mymonitoring}" 2> /dev/null | grep -vi "influx" | grep -vi "chrono" | sed -r 's/^(COPY|ADD)[[:space:]]+([^[:space:]]*).*$/\2/')
|
||||
if ! [ -f "mymonitoring/${CONFIGFILE}" ]; then
|
||||
CONFIGFILE="mymonitoring/supervisor.conf"
|
||||
fi
|
||||
if [ -f "mymonitoring/${CONFIGFILE}" ]; then
|
||||
ERRS=0
|
||||
|
||||
if grep -E -i "command=.*service.*start" "mymonitoring/${CONFIGFILE}" > /dev/null; then
|
||||
ERRS=$(($ERRS + 1))
|
||||
fi
|
||||
|
||||
note $((2 - $ERRS))
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
|
||||
# Exercice docker-compose
|
||||
|
||||
DOCKERCOMPOSE="docker-compose.yml"
|
||||
|
||||
NBBUILD=$(grep -E -i "build[[:space:]]*:" "${DOCKERCOMPOSE}" 2> /dev/null | wc -l)
|
||||
if [ $NBBUILD -ge 2 ]; then
|
||||
note 2
|
||||
elif [ $NBBUILD -ge 1 ]; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
NBVOLS=$(grep -E -i "volumes[[:space:]]*:" "${DOCKERCOMPOSE}" 2> /dev/null | wc -l)
|
||||
if [ $NBVOLS -ge 2 ]; then
|
||||
note 2
|
||||
elif [ $NBVOLS -ge 1 ]; then
|
||||
note 1
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
NBNET=$(grep -E -i "networks[[:space:]]*:" "${DOCKERCOMPOSE}" 2> /dev/null | wc -l)
|
||||
NBLINK=$(grep -E -i "networks[[:space:]]*:" "${DOCKERCOMPOSE}" 2> /dev/null | wc -l)
|
||||
if [ $NBNET -ge 2 ]; then
|
||||
note 2
|
||||
elif [ $NBNET -ge 1 ]; then
|
||||
note 1
|
||||
elif [ $NBLINK -ge 1 ]; then
|
||||
note 2
|
||||
else
|
||||
note 0
|
||||
fi
|
||||
|
||||
|
||||
echo #" = $NOTE"
|
||||
popd > /dev/null
|
||||
done
|
Loading…
Add table
Add a link
Reference in a new issue