@@ -17,7 +17,7 @@ RUN mkdir -p ${BERKELEYDB_PREFIX}
1717
1818WORKDIR /${BERKELEYDB_VERSION}/build_unix
1919
20- RUN ../dist/configure --enable-cxx --disable-shared --with-pic --prefix=${BERKELEYDB_PREFIX}
20+ RUN ../dist/configure --enable-cxx --disable-shared --with-pic --prefix=${BERKELEYDB_PREFIX} --build=aarch64-unknown-linux-gnu
2121RUN make -j4
2222RUN make install
2323RUN rm -rf ${BERKELEYDB_PREFIX}/docs
@@ -35,62 +35,53 @@ RUN apk --no-cache add build-base
3535RUN apk --no-cache add chrpath
3636RUN apk --no-cache add file
3737RUN apk --no-cache add gnupg
38+ RUN apk --no-cache add git
3839RUN apk --no-cache add libevent-dev
3940RUN apk --no-cache add libressl
4041RUN apk --no-cache add libtool
4142RUN apk --no-cache add linux-headers
4243RUN apk --no-cache add sqlite-dev
4344RUN apk --no-cache add zeromq-dev
44- RUN set -ex \
45- && for key in \
46- 0CCBAAFD76A2ECE2CCD3141DE2FFD5B1D88CA97D \
47- 152812300785C96444D3334D17565732E08E5E41 \
48- 0AD83877C1F0CD1EE9BD660AD7CC770B81FD22A8 \
49- 590B7292695AFFA5B672CBB2E13FC145CD3F4304 \
50- 28F5900B1BB5D1A4B6B6D1A9ED357015286A333D \
51- 637DB1E23370F84AFF88CCE03152347D07DA627C \
52- CFB16E21C950F67FA95E558F2EEB9F5CC09526C1 \
53- 6E01EEC9656903B0542B8F1003DB6322267C373B \
54- D1DBF2C4B96F2DEBF4C16654410108112E7EA81F \
55- 82921A4B88FD454B7EB8CE3C796C4109063D4EAF \
56- 9DEAE0DC7063249FB05474681E4AED62986CD25D \
57- 9D3CC86A72F8494342EA5FD10A41BDC3F4FAFF1C \
58- 74E2DEF5D77260B98BC19438099BAD163C70FBFA \
59- ; do \
60- gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" || \
61- gpg --batch --keyserver keys.openpgp.org --recv-keys "$key" || \
62- gpg --batch --keyserver keyserver.pgp.com --recv-keys "$key" || \
63- gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys "$key" || \
64- gpg --batch --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" ; \
65- done
66-
67- ENV BITCOIN_VERSION=22.0
68- ENV BITCOIN_PREFIX=/opt/bitcoin-${BITCOIN_VERSION}
6945
70- RUN wget https://bitcoincore.org/bin/bitcoin-core-${ BITCOIN_VERSION}/SHA256SUMS
71- RUN wget https://bitcoincore.org/bin/ bitcoin-core- ${BITCOIN_VERSION}/SHA256SUMS.asc
72- RUN wget https://bitcoincore.org/bin/ bitcoin-core-${BITCOIN_VERSION}/bitcoin-${BITCOIN_VERSION}.tar.gz
73- RUN gpg --verify SHA256SUMS.asc SHA256SUMS
74- RUN grep " bitcoin-${BITCOIN_VERSION}.tar.gz \$ " SHA256SUMS | sha256sum -c -
75- RUN tar -xzf *.tar.gz
46+ ENV BITCOIN_VERSION=22.1
47+ ENV BITCOIN_PREFIX=/opt/ bitcoin-${BITCOIN_VERSION}
48+ ENV BITCOIN_SOURCE_DIR=/ bitcoin/src
49+ ENV SIGS_REPO_URL= "https://github.com/bitcoin-core/guix.sigs.git"
50+ ENV SIGS_CLONE_DIR= "guix.sigs"
51+ ENV VERIFY_SCRIPT_URL= "https://github.com/bitcoin/bitcoin/raw/master/contrib/verify-binaries/verify.py"
7652
77- WORKDIR /bitcoin-${BITCOIN_VERSION}
53+ WORKDIR /bitcoin
54+ RUN set -ex \
55+ && wget https://bitcoincore.org/bin/bitcoin-core-${BITCOIN_VERSION}/bitcoin-${BITCOIN_VERSION}.tar.gz \
56+ && wget https://bitcoincore.org/bin/bitcoin-core-${BITCOIN_VERSION}/SHA256SUMS \
57+ && wget https://bitcoincore.org/bin/bitcoin-core-${BITCOIN_VERSION}/SHA256SUMS.asc \
58+ && git clone ${SIGS_REPO_URL} ${SIGS_CLONE_DIR} \
59+ && gpg --import "${SIGS_CLONE_DIR}" /builder-keys/* \
60+ && wget -O verify.py ${VERIFY_SCRIPT_URL} \
61+ && chmod +x verify.py \
62+ && ./verify.py bin SHA256SUMS \
63+ "bitcoin-${BITCOIN_VERSION}.tar.gz" \
64+ && mkdir -p ${BITCOIN_SOURCE_DIR} \
65+ && tar -xzf "bitcoin-${BITCOIN_VERSION}.tar.gz" -C ${BITCOIN_SOURCE_DIR} \
66+ && rm -rf ${SIGS_CLONE_DIR}
67+
68+ WORKDIR "${BITCOIN_SOURCE_DIR}/bitcoin-${BITCOIN_VERSION}"
7869
7970RUN sed -i '/AC_PREREQ/a\A R_FLAGS=cr' src/univalue/configure.ac
8071RUN sed -i '/AX_PROG_CC_FOR_BUILD/a\A R_FLAGS=cr' src/secp256k1/configure.ac
8172RUN sed -i s:sys/fcntl.h:fcntl.h: src/compat.h
8273RUN ./autogen.sh
8374RUN ./configure LDFLAGS=-L`ls -d /opt/db*`/lib/ CPPFLAGS=-I`ls -d /opt/db*`/include/ \
84- --prefix=${BITCOIN_PREFIX} \
85- --mandir=/usr/share/man \
86- --disable-tests \
87- --disable-bench \
88- --disable-ccache \
89- --with-gui=no \
90- --with-utils \
91- --with-libs \
92- --with-sqlite=yes \
93- --with-daemon
75+ --prefix=${BITCOIN_PREFIX} \
76+ --mandir=/usr/share/man \
77+ --disable-tests \
78+ --disable-bench \
79+ --disable-ccache \
80+ --with-gui=no \
81+ --with-utils \
82+ --with-libs \
83+ --with-sqlite=yes \
84+ --with-daemon
9485RUN make -j4
9586RUN make install
9687RUN strip ${BITCOIN_PREFIX}/bin/bitcoin-cli
@@ -99,6 +90,7 @@ RUN strip ${BITCOIN_PREFIX}/bin/bitcoind
9990RUN strip ${BITCOIN_PREFIX}/lib/libbitcoinconsensus.a
10091RUN strip ${BITCOIN_PREFIX}/lib/libbitcoinconsensus.so.0.0.0
10192
93+ # Build stage for compiled artifacts
10294FROM alpine
10395
10496ARG UID=100
@@ -122,7 +114,7 @@ RUN apk --no-cache add \
122114 su-exec
123115
124116ENV BITCOIN_DATA=/home/bitcoin/.bitcoin
125- ENV BITCOIN_VERSION=22.0
117+ ENV BITCOIN_VERSION=22.1
126118ENV BITCOIN_PREFIX=/opt/bitcoin-${BITCOIN_VERSION}
127119ENV PATH=${BITCOIN_PREFIX}/bin:$PATH
128120
0 commit comments