FROM phusion/baseimage:latest RUN groupadd -r bitcoin && useradd -r -m -g bitcoin bitcoin ENV BITCOIN_VERSION 0.14.0 ENV FILENAME bitcoin-0.14.0-x86_64-linux-gnu.tar.gz ENV BITCOIN_DIR /bitcoin RUN set -ex \ && apt-get update \ && apt-get install -y --no-install-recommends ca-certificates wget \ && rm -rf /var/lib/apt/lists/* \ # grab gosu for easy step-down from root && gpg --keyserver pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 \ && wget -qO /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/1.7/gosu-$(dpkg --print-architecture)" \ && wget -qO /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/1.7/gosu-$(dpkg --print-architecture).asc" \ && gpg --verify /usr/local/bin/gosu.asc \ && rm /usr/local/bin/gosu.asc \ && chmod +x /usr/local/bin/gosu \ # remove build dependencies && apt-get purge -y --auto-remove wget WORKDIR $BITCOIN_DIR COPY $FILENAME . RUN tar zxvf $FILENAME RUN mv bitcoin-$BITCOIN_VERSION/* . RUN rm -rf $FILENAME RUN rm -rf bitcoin-$BITCOIN_VERSION ENV BITCOIN_DATA /data RUN mkdir $BITCOIN_DATA \ && chown bitcoin:bitcoin $BITCOIN_DATA\ && ln -s $BITCOIN_DATA /home/bitcoin/.bitcoin # Add bitcoin binary path to $PATH ENV PATH $BITCOIN_DIR/bin:$PATH VOLUME /data COPY docker-entrypoint.sh /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"] EXPOSE 8333 18333 CMD ["bitcoind"]