Skip to content

Commit b80f59a

Browse files
committed
Update Dockerfile
1 parent 7349c9d commit b80f59a

File tree

1 file changed

+76
-25
lines changed

1 file changed

+76
-25
lines changed

Dockerfile

Lines changed: 76 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,74 @@
1-
ARG VERSION="0.19.1"
2-
3-
ARG LEGACY_BITCOIN_CORE_RELEASE_KEY="01EA5486DE18A882D4C2684590C8019E36C2E964"
4-
ARG ANDREW_CHOW="152812300785C96444D3334D17565732E08E5E41"
5-
ARG JON_ATACK="82921A4B88FD454B7EB8CE3C796C4109063D4EAF"
6-
ARG JONAS_SCHNELLI="32EE5C4C3FA15CCADB46ABE529D4BCB6416F53EC"
7-
ARG MATT_CORALLO="07DF3E57A548CCFB7530709189BBB8663E2E65CE"
8-
ARG LUKE_DASHJR="E463A93F5F3117EEDE6C7316BD02942421F4889F"
9-
ARG PETER_TODD="37EC7D7B0A217CDB4B4E007E7FAB114267E4FA04"
10-
ARG PIETER_WUILLE="133EAC179436F14A5CF1B794860FEB804E669320"
11-
ARG SJORS_PROVOOST="ED9BDF7AD6A55E232E84524257FF9BDBCC301009"
12-
ARG KEYS="${LEGACY_BITCOIN_CORE_RELEASE_KEY} ${ANDREW_CHOW} ${JON_ATACK} ${JONAS_SCHNELLI} ${MATT_CORALLO} ${LUKE_DASHJR} ${PETER_TODD} ${PIETER_WUILLE} ${SJORS_PROVOOST}"
1+
# Bitcoin Core Release Keys as of 4/Sep/2024
2+
# - https://github.com/bitcoin-core/guix.sigs/tree/main/builder-keys
3+
# - https://api.github.com/repos/bitcoin-core/guix.sigs/contents/builder-keys
4+
ARG KEYS="\
5+
# 0xb10c:
6+
982A193E3CE0EED535E09023188CBB2648416AD5 \
7+
# CoinForensics:
8+
101598DC823C1B5F9A6624ABA5E0907A0380E6C3 \
9+
# Emzy:
10+
9EDAFF80E080659604F4A76B2EBB056FD847F8A7 \
11+
# Sjors:
12+
ED9BDF7AD6A55E232E84524257FF9BDBCC301009 \
13+
# TheCharlatan:
14+
A8FC55F3B04BA3146F3492E79303B33A305224CB \
15+
# achow101:
16+
152812300785C96444D3334D17565732E08E5E41 \
17+
# benthecarman:
18+
0AD83877C1F0CD1EE9BD660AD7CC770B81FD22A8 \
19+
# cfields:
20+
C060A6635913D98A3587D7DB1C2491FFEB0EF770 \
21+
# darosior:
22+
590B7292695AFFA5B672CBB2E13FC145CD3F4304 \
23+
# davidgumberg:
24+
41E442A14C342C877AE4DC8F3B6305FA06DE51D5 \
25+
# dunxen:
26+
948444FCE03B05BA5AB0591EC37B1C1D44C786EE \
27+
# fanquake:
28+
E777299FC265DD04793070EB944D35F9AC3DB76A \
29+
# glozow:
30+
6B002C6EA3F91B1B0DF0C9BC8F617F1200A6D25C \
31+
# guggero:
32+
F4FC70F07310028424EFC20A8E4256593F177720 \
33+
# hebasto:
34+
D1DBF2C4B96F2DEBF4C16654410108112E7EA81F \
35+
# jackielove4u:
36+
287AE4CA1187C68C08B49CB2D11BD4F33F1DB499 \
37+
# josibake:
38+
616516B8EB6ED02882FC4A7A8ADCB558C4F33D65 \
39+
# kvaciral:
40+
C388F6961FB972A95678E327F62711DBDCA8AE56 \
41+
# laanwj:
42+
71A3B16735405025D447E8F274810B012346C9A6 \
43+
# luke-jr:
44+
1A3E761F19D2CC7785C5502EA291A2C45D0C504A \
45+
# m3dwards:
46+
E86AE73439625BBEE306AAE6B66D427F873CB1A3 \
47+
# pinheadmz:
48+
E61773CD6E01040E2F1BD78CE7E2984B6289C93A \
49+
# satsie:
50+
2F78ACF677029767C8736F13747A7AE2FB0FD25B \
51+
# sipa:
52+
133EAC179436F14A5CF1B794860FEB804E669320 \
53+
# svanstaa:
54+
9ED99C7A355AE46098103E74476E74C8529A9006 \
55+
# theStack:
56+
6A8F9C266528E25AEB1D7731C2371D91CB716EA7 \
57+
# vertiond:
58+
28E72909F1717FE9607754F8A7BEB2621678D37D \
59+
# willcl-ark:
60+
67AA5B46E7AF78053167FE343B8F814A784218F8 \
61+
# willyko:
62+
79D00BAC68B56D422F945A8F8E3A8F3247DBCBBF \
63+
"
1364

1465
# Build stage
15-
FROM --platform=$BUILDPLATFORM debian:stable-slim as builder
16-
LABEL maintainer="Luke Childs <[email protected]>"
17-
18-
ARG TARGETARCH
66+
FROM --platform=$BUILDPLATFORM debian:stable-slim AS builder
67+
LABEL org.opencontainers.image.authors="Umbrel, Inc. <https://umbrel.com>"
1968

20-
ARG ARCH
2169
ARG VERSION
70+
ARG TARGETPLATFORM
71+
# re-declared from above
2272
ARG KEYS
2373

2474
WORKDIR /build
@@ -27,17 +77,18 @@ RUN echo "Installing build deps"
2777
RUN apt-get update
2878
RUN apt-get install -y wget pgp
2979

30-
RUN echo "Deriving tarball name from \$TARGETARCH"
31-
RUN [ "${TARGETARCH}" = "amd64" ] && echo "bitcoin-${VERSION}-x86_64-linux-gnu.tar.gz" > /tarball-name || true
32-
RUN [ "${TARGETARCH}" = "arm64" ] && echo "bitcoin-${VERSION}-aarch64-linux-gnu.tar.gz" > /tarball-name || true
33-
RUN [ "${TARGETARCH}" = "arm" ] && echo "bitcoin-${VERSION}-arm-linux-gnueabihf.tar.gz" > /tarball-name || true
34-
RUN echo "Tarball name: $(cat /tarball-name)"
80+
RUN echo "Deriving tarball name from \$TARGETPLATFORM" && \
81+
case "${TARGETPLATFORM}" in \
82+
"linux/amd64") echo "bitcoin-${VERSION}-x86_64-linux-gnu.tar.gz" > /tarball-name ;; \
83+
"linux/arm64") echo "bitcoin-${VERSION}-aarch64-linux-gnu.tar.gz" > /tarball-name ;; \
84+
*) echo "Unsupported platform: ${TARGETPLATFORM}" && exit 1 ;; \
85+
esac && \
86+
echo "Tarball name: $(cat /tarball-name)"
3587

3688
RUN echo "Downloading release assets"
3789
RUN wget https://bitcoincore.org/bin/bitcoin-core-${VERSION}/$(cat /tarball-name)
3890
RUN wget https://bitcoincore.org/bin/bitcoin-core-${VERSION}/SHA256SUMS.asc
39-
# This file only exists after v22 so allow it to fail
40-
RUN wget https://bitcoincore.org/bin/bitcoin-core-${VERSION}/SHA256SUMS || true
91+
RUN wget https://bitcoincore.org/bin/bitcoin-core-${VERSION}/SHA256SUMS
4192
RUN echo "Downloaded release assets:" && ls
4293

4394
RUN echo "Verifying PGP signatures"
@@ -48,7 +99,7 @@ RUN echo "PGP signature verification passed"
4899
RUN echo "Verifying checksums"
49100
RUN [ -f SHA256SUMS ] && cp SHA256SUMS /sha256sums || cp SHA256SUMS.asc /sha256sums
50101
RUN grep $(cat /tarball-name) /sha256sums | sha256sum -c
51-
RUN echo "Chucksums verified ok"
102+
RUN echo "Checksums verified ok"
52103

53104
RUN echo "Extracting release assets"
54105
RUN tar -zxvf $(cat /tarball-name) --strip-components=1

0 commit comments

Comments
 (0)