diff --git a/other/bootstrap_daemon/docker/Dockerfile b/other/bootstrap_daemon/docker/Dockerfile index ef9d525c..d4d611b5 100644 --- a/other/bootstrap_daemon/docker/Dockerfile +++ b/other/bootstrap_daemon/docker/Dockerfile @@ -1,7 +1,8 @@ FROM debian:jessie -# get all deps -RUN apt-get update && apt-get install -y \ +WORKDIR /tmp/tox + +RUN export BUILD_PACKAGES="\ build-essential \ libtool \ autotools-dev \ @@ -12,41 +13,40 @@ RUN apt-get update && apt-get install -y \ yasm \ libsodium-dev \ libconfig-dev \ - python3 \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* - + python3" && \ + export RUNTIME_PACKAGES="\ + libconfig9 \ + libsodium13" && \ +# get all deps + apt-get update && apt-get install -y $BUILD_PACKAGES $RUNTIME_PACKAGES && \ # install toxcore and daemon -WORKDIR /root/ -RUN git clone https://github.com/irungentoo/toxcore -WORKDIR /root/toxcore/ -RUN ./autogen.sh -RUN ./configure --enable-daemon -RUN make -j`nproc` -RUN make install -j`nproc` -RUN ldconfig - -WORKDIR /root/toxcore/other/bootstrap_daemon/ - + git clone https://github.com/irungentoo/toxcore && \ + cd toxcore && \ + ./autogen.sh && \ + ./configure --enable-daemon && \ + make -j`nproc` && \ + make install -j`nproc` && \ + ldconfig && \ # add new user -RUN useradd --home-dir /var/lib/tox-bootstrapd --create-home \ + useradd --home-dir /var/lib/tox-bootstrapd --create-home \ --system --shell /sbin/nologin \ --comment "Account to run Tox's DHT bootstrap daemon" \ - --user-group tox-bootstrapd -RUN chmod 700 /var/lib/tox-bootstrapd - -RUN cp tox-bootstrapd.conf /etc/tox-bootstrapd.conf - + --user-group tox-bootstrapd && \ + chmod 700 /var/lib/tox-bootstrapd && \ + cp other/bootstrap_daemon/tox-bootstrapd.conf /etc/tox-bootstrapd.conf && \ # remove all the example bootstrap nodes from the config file -RUN N=-1 && \ - while grep -q "bootstrap_nodes =" /etc/tox-bootstrapd.conf; \ - do \ - head -n $N tox-bootstrapd.conf > /etc/tox-bootstrapd.conf; \ - N=$((N-1)); \ - done - + sed -i '/^bootstrap_nodes = /,$d' /etc/tox-bootstrapd.conf && \ # add bootstrap nodes from https://nodes.tox.chat/ -RUN python3 docker/get-nodes.py >> /etc/tox-bootstrapd.conf + python3 other/bootstrap_daemon/docker/get-nodes.py >> /etc/tox-bootstrapd.conf && \ +# perform cleanup + export AUTO_ADDED_PACKAGES="$(apt-mark showauto)" && \ + apt-get remove --purge -y $BUILD_PACKAGES $AUTO_ADDED_PACKAGES && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* && \ + cd / && \ + rm -rf /tmp/* + +WORKDIR /var/lib/tox-bootstrapd USER tox-bootstrapd @@ -55,5 +55,4 @@ ENTRYPOINT /usr/local/bin/tox-bootstrapd \ --log-backend stdout \ --foreground -EXPOSE 443 3389 33445 -EXPOSE 33445/udp +EXPOSE 443/tcp 3389/tcp 33445/tcp 33445/udp