# A container for PyBitmessage daemon FROM ubuntu:bionic-20220401 RUN apt-get update # Install dependencies RUN apt-get install -yq --no-install-suggests --no-install-recommends \ build-essential libcap-dev libssl-dev \ python-all-dev python-msgpack python-pip python-setuptools \ git WORKDIR /root RUN git clone https://github.com/Bitmessage/PyBitmessage WORKDIR /root/PyBitmessage # Install RUN pip2 install jsonrpclib . FROM ubuntu:bionic-20220401 EXPOSE 8442 ENV BITMESSAGE_API_USER=api ENV BITMESSAGE_API_PASSWORD=changeme ENV BITMESSAGE_SEED_PHRASE=changeme ENV BITMESSAGE_SEED_ADDRESSES=1 ENV HOME /home/bitmessage ENV BITMESSAGE_HOME ${HOME} COPY --from=0 /usr/local/ /usr/local/ # Install dependencies RUN apt-get update \ && apt-get install -yq --no-install-suggests --no-install-recommends python-setuptools \ && rm -rf /var/lib/apt/lists/* # Create a user RUN useradd --create-home --home-dir $HOME bitmessage WORKDIR ${HOME} USER bitmessage # Generate default config RUN pybitmessage -t # Setup environment ENTRYPOINT sed -ie "s|\(apiinterface = \).*|\10\.0\.0\.0|g" keys.dat \ #&& sed -ie "s|\(apivariant = \).*|\1json|g" keys.dat \ && sed -ie "s|\(apiusername = \).*|\1$BITMESSAGE_API_USER|g" keys.dat \ && sed -ie "s|\(apipassword = \).*|\1$BITMESSAGE_API_PASSWORD|g" keys.dat \ && exec pybitmessage -d # Generate Deterministic address HEALTHCHECK --retries=3 --interval=15s \ CMD python -c "import xmlrpclib; api_link='http://$BITMESSAGE_API_USER:$BITMESSAGE_API_PASSWORD@127.0.0.1:8442/'; api = xmlrpclib.ServerProxy(api_link); print api.createDeterministicAddresses('$BITMESSAGE_SEED_PHRASE'.encode('base64'),$BITMESSAGE_SEED_ADDRESSES)" || exit 1