# Dockerfile to build a distributable container image from pre-existing binaries FROM debian:stable-slim as prod ARG MAKE_TARGET=wakunode2 LABEL maintainer="vaclav@status.im" LABEL source="https://github.com/waku-org/nwaku" LABEL description="Wakunode: Waku client" LABEL commit="unknown" # DevP2P, LibP2P, and JSON RPC ports EXPOSE 30303 60000 8545 # Referenced in the binary RUN apt-get update &&\ apt-get install -y libpcre3 libpq-dev curl iproute2 wget &&\ apt-get clean && rm -rf /var/lib/apt/lists/* # Fix for 'Error loading shared library libpcre.so.3: No such file or directory' RUN ln -s /usr/lib/libpcre.so /usr/lib/libpcre.so.3 # Fix for 'Error loading shared library libnegentropy.so: No such file or directory' ADD ./libnegentropy.so ./ # Copy to separate location to accomodate different MAKE_TARGET values ADD ./build/$MAKE_TARGET /usr/local/bin/ # Copy migration scripts for DB upgrades ADD ./migrations/ /app/migrations/ # Symlink the correct wakunode binary RUN ln -sv /usr/local/bin/$MAKE_TARGET /usr/bin/wakunode ENTRYPOINT ["/usr/bin/wakunode"] # By default just show help if called without arguments CMD ["--help"]