docker-bitcoin-core/0.13/alpine/Dockerfile

73 lines
2.4 KiB
Docker
Raw Normal View History

2016-08-21 14:31:42 +00:00
FROM alpine:3.4
MAINTAINER Rui Marinho <rui.marinho@seegno.com> (@ruimarinho)
RUN adduser -S bitcoin
ENV BERKELEYDB_VERSION=db-4.8.30.NC
ENV BERKELEYDB_PREFIX=/opt/${BERKELEYDB_VERSION}
2017-01-04 00:05:33 +00:00
ENV BITCOIN_VERSION=0.13.2
2016-08-21 14:31:42 +00:00
ENV BITCOIN_PREFIX=/opt/bitcoin-${BITCOIN_VERSION} \
2017-01-04 00:05:33 +00:00
BITCOIN_SHASUM="8a1307605b71b1df720ed0360d801d8939138aaca0a495d0f1e4e500efc2eaa1 v${BITCOIN_VERSION}.tar.gz" \
2016-08-21 14:31:42 +00:00
BITCOIN_DATA=/home/bitcoin/.bitcoin
ENV PATH=${BITCOIN_PREFIX}/bin:$PATH
RUN apk --no-cache --virtual build-dependendencies add autoconf \
automake \
boost-dev \
build-base \
chrpath \
file \
libevent-dev \
openssl \
libtool \
linux-headers \
openssl-dev \
protobuf-dev \
zeromq-dev \
&& mkdir -p /tmp/build \
&& wget -O /tmp/build/${BERKELEYDB_VERSION}.tar.gz http://download.oracle.com/berkeley-db/${BERKELEYDB_VERSION}.tar.gz \
&& tar -xzf /tmp/build/${BERKELEYDB_VERSION}.tar.gz -C /tmp/build/ \
&& sed s/__atomic_compare_exchange/__atomic_compare_exchange_db/g -i /tmp/build/${BERKELEYDB_VERSION}/dbinc/atomic.h \
&& mkdir -p ${BERKELEYDB_PREFIX} \
&& cd /tmp/build/${BERKELEYDB_VERSION}/build_unix \
&& ../dist/configure --enable-cxx --disable-shared --with-pic --prefix=${BERKELEYDB_PREFIX} \
&& make install \
&& wget -O /tmp/build/v${BITCOIN_VERSION}.tar.gz https://github.com/bitcoin/bitcoin/archive/v${BITCOIN_VERSION}.tar.gz \
&& cd /tmp/build \
&& echo "${BITCOIN_SHASUM}" | sha256sum -c \
&& tar -xzf v${BITCOIN_VERSION}.tar.gz \
&& cd /tmp/build/bitcoin-${BITCOIN_VERSION} \
&& ./autogen.sh \
&& ./configure LDFLAGS=-L${BERKELEYDB_PREFIX}/lib/ CPPFLAGS=-I${BERKELEYDB_PREFIX}/include/ \
--prefix=${BITCOIN_PREFIX} \
--mandir=/usr/share/man \
--disable-tests \
--disable-bench \
--disable-ccache \
--with-gui=no \
--with-utils \
--with-libs \
--with-daemon \
&& make install \
&& cd / \
&& strip ${BITCOIN_PREFIX}/bin/bitcoin-cli ${BITCOIN_PREFIX}/bin/bitcoind ${BITCOIN_PREFIX}/bin/bitcoin-tx ${BITCOIN_PREFIX}/lib/libbitcoinconsensus.a ${BITCOIN_PREFIX}/lib/libbitcoinconsensus.so.0.0.0 \
&& rm -rf /tmp/build ${BERKELEYDB_PREFIX}/docs \
&& apk --no-cache --purge del build-dependendencies \
&& apk --no-cache add boost \
boost-program_options \
libevent \
libzmq \
su-exec
VOLUME ["/home/bitcoin/.bitcoin"]
COPY docker-entrypoint.sh /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
EXPOSE 8332 8333 18332 18333 18444
CMD ["bitcoind"]