From: Art Cancro Date: Thu, 17 Oct 2019 12:51:27 +0000 (-0400) Subject: more tuning to startup scripts X-Git-Url: https://code.citadel.org/?p=citadel-docker.git;a=commitdiff_plain;h=ba96c571eb2061b2ebf3b9b64f66f66e0683f412 more tuning to startup scripts --- diff --git a/Dockerfile b/Dockerfile index 71bb536..38711f2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,27 +15,16 @@ RUN sh -c 'cd /tmp/ctdl_build/citadel/libcitadel && ./bootstrap && ./configure - RUN sh -c 'cd /tmp/ctdl_build/citadel/citadel && ./bootstrap && ./configure && make && make install' RUN sh -c 'cd /tmp/ctdl_build/citadel/webcit && ./bootstrap && ./configure && make && make install' RUN sh -c 'cd /tmp/ctdl_build/citadel/textclient && ./bootstrap && ./configure --prefix=/usr && make && make install' -RUN sh -c 'cd / && rm -vfr /tmp/ctdl_build' +RUN sh -c 'cd /tmp && rm -vfr /tmp/ctdl_build' RUN sh -c 'rm -vrf /usr/local/citadel/data /usr/local/citadel/files /usr/local/citadel/keys /usr/local/webcit/keys' # Supervisor ADD supervisor.conf /etc/ ADD citadel-docker-startup.sh /usr/local/bin/ +RUN sh -c 'chmod 755 /usr/local/bin/citadel-docker-startup.sh' # Ports -EXPOSE 25/tcp -EXPOSE 80/tcp -EXPOSE 110/tcp -EXPOSE 119/tcp -EXPOSE 143/tcp -EXPOSE 443/tcp -EXPOSE 465/tcp -EXPOSE 504/tcp -EXPOSE 563/tcp -EXPOSE 587/tcp -EXPOSE 993/tcp -EXPOSE 995/tcp -EXPOSE 2020/tcp -EXPOSE 5222/tcp +EXPOSE 25 80 110 119 143 443 465 504 563 587 993 995 2020 5222 +# Let's go! CMD /usr/local/bin/citadel-docker-startup.sh diff --git a/citadel-docker-startup.sh b/citadel-docker-startup.sh index 64d6387..b9558e6 100755 --- a/citadel-docker-startup.sh +++ b/citadel-docker-startup.sh @@ -2,18 +2,17 @@ # This is the script that is run when the Citadel Docker Container starts up. +# Create directories within the volume, if they do not already exist. +mkdir -p /citadel-data 2>/dev/null +mkdir -p /citadel-data/data 2>/dev/null +mkdir -p /citadel-data/files 2>/dev/null +mkdir -p /citadel-data/keys 2>/dev/null -# Any of these can fail, since they may already exist -mkdir /citadel-data -mkdir -p /citadel-data/data -mkdir -p /citadel-data/files -mkdir -p /citadel-data/keys +# Create symlinks into the volume subdirectories, from where our programs expect them to be. +ln -sfv /citadel-data/data /usr/local/citadel/ +ln -sfv /citadel-data/files /usr/local/citadel/ +ln -sfv /citadel-data/keys /usr/local/citadel/ +ln -sfv /citadel-data/keys /usr/local/webcit/ -# Now create the links -ln -sfv /citadel-data/data /usr/local/citadel/data -ln -sfv /citadel-data/files /usr/local/citadel/files -ln -sfv /citadel-data/keys /usr/local/citadel/keys -ln -sfv /citadel-data/keys /usr/local/webcit/keys - -# supervisord will take it from here -exec supervisor +# supervisord will take it from here. +exec /usr/bin/supervisord -c /etc/supervisor.conf