1- FROM debian:stable-slim AS builder
1+ FROM debian:stable-slim as builder
22
3- # VERSION of Elements Core to be build
3+ # VERSION of BItcoin Core to be build
44ARG VERSION=0.21.0
55
6- RUN apt-get update && apt-get install -y wget curl libzmq3-dev build-essential libtool autotools-dev automake pkg-config bsdmainutils python3 libssl-dev libevent-dev libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-test-dev libboost-thread-dev libdb-dev libdb++-dev libdb4.8
6+ RUN apt-get update && apt-get install -y \
7+ build-essential \
8+ automake pkg-config \
9+ wget curl libzmq3-dev \
10+ libtool autotools-dev \
11+ bsdmainutils python3 \
12+ libsqlite3-dev libdb-dev \
13+ libdb++-dev libevent-dev \
14+ libboost-dev libboost-system-dev \
15+ libboost-filesystem-dev libboost-test-dev
716
8- RUN wget -qO- https://github.com/ElementsProject/elements/archive/elements-$VERSION.tar.gz | tar -xvz -C /tmp
17+ RUN wget -qO- https://github.com/ElementsProject/elements/archive/elements-$VERSION.tar.gz | tar -xvz
918
10- RUN cd /tmp/elements-elements-$VERSION/depends && make NO_QT=1 NO_UPNP=1 && cd .. && \
11- ./autogen.sh && \
12- ./configure --without-gui --with-incompatible-bdb && \
13- make && \
14- mv ./src/elementsd /elementsd && \
19+ WORKDIR /elements-elements-$VERSION
20+
21+ RUN cd ./depends && make NO_QT=1 NO_UPNP=1 && cd .. && ./autogen.sh
22+
23+ RUN ./configure \
24+ LDFLAGS=-static-libstdc++ \
25+ CXXFLAGS="-O2" \
26+ --disable-man \
27+ --disable-shared \
28+ --disable-ccache \
29+ --disable-tests \
30+ --enable-static \
31+ --without-gui \
32+ --without-libs \
33+ --with-utils \
34+ --with-zmq \
35+ --with-sqlite=yes \
36+ --without-miniupnpc \
37+ --enable-reduce-exports \
38+ --with-incompatible-bdb \
39+ --enable-glibc-back-compat
40+
41+ RUN make clean
42+ RUN make -j$(( $(nproc) + 1 )) check
43+ RUN make install
44+
45+ RUN mv ./src/elementsd /elementsd && \
1546 mv ./src/elements-cli /elements-cli
1647
1748FROM debian:stable-slim
1849
19- RUN apt-get update && apt-get install -y libboost-filesystem-dev \
50+ RUN apt-get update && apt-get install -y \
51+ libboost-system-dev \
52+ libboost-filesystem-dev \
2053 libboost-thread-dev \
2154 libevent-dev \
2255 libsodium-dev \
23- libzmq3-dev \
2456 libdb-dev \
25- libdb++-dev
57+ libdb++-dev \
58+ libzmq3-dev \
59+ libsqlite3-dev
2660
2761RUN useradd -ms /bin/bash elements
2862
@@ -35,3 +69,5 @@ COPY --from=builder /elements-cli /usr/local/bin/elements-cli
3569RUN mkdir -p "$HOME/.elements/"
3670
3771ENTRYPOINT [ "elementsd" ]
72+
73+
0 commit comments