Docker: various updates

- use exec in entrypoint.sh, get rid of extra shell process
- use CMD instead of ENTRYPOINT, so image can be run with /bin/sh arg
This commit is contained in:
Zlatko Čalušić 2017-10-18 23:18:44 +02:00
parent 87356ac452
commit ebe3bc04b5
3 changed files with 27 additions and 27 deletions

View file

@ -1,14 +1,16 @@
FROM alpine:3.6
RUN apk add --no-cache --update apache2-utils
COPY docker/*_user rest-server /usr/bin/
COPY docker/entry.sh /
ENV DATA_DIRECTORY /data
ENV PASSWORD_FILE /data/.htpasswd
ENV DATA_DIRECTORY=/data
ENV PASSWORD_FILE=/data/.htpasswd
RUN apk add --no-cache --update apache2-utils
COPY rest-server docker/*_user /usr/bin/
VOLUME /data
EXPOSE 80
ENTRYPOINT ["/entry.sh"]
COPY docker/entrypoint.sh /entrypoint.sh
CMD [ "/entrypoint.sh" ]

View file

@ -1,21 +0,0 @@
#!/bin/sh
set -e
mkdir -p $DATA_DIRECTORY
if [ -z "$DISABLE_AUTHENTICATION" ]; then
if [ ! -f $PASSWORD_FILE ]; then
touch $PASSWORD_FILE
fi
if [ ! -s $PASSWORD_FILE ]; then
echo
echo "**WARNING** No user exists, please 'docker exec -ti \$CONTAINER_ID create_user'"
echo
fi
else
rm -f $PASSWORD_FILE
fi
rest-server --listen ":80" $OPTIONS --path $DATA_DIRECTORY

19
docker/entrypoint.sh Executable file
View file

@ -0,0 +1,19 @@
#!/bin/sh
set -e
if [ -z "$DISABLE_AUTHENTICATION" ]; then
if [ ! -f "$PASSWORD_FILE" ]; then
touch "$PASSWORD_FILE"
fi
if [ ! -s "$PASSWORD_FILE" ]; then
echo
echo "**WARNING** No user exists, please 'docker exec -it \$CONTAINER_ID create_user'"
echo
fi
else
rm -f "$PASSWORD_FILE"
fi
exec rest-server --listen ":80" $OPTIONS --path "$DATA_DIRECTORY"