/ radicle-node / Dockerfile
Dockerfile
 1  # Build
 2  FROM registry.gitlab.com/rust_musl_docker/image:stable-1.65.0@sha256:f95635740757e0e9a29b51d5060a7564e900cb5192defdd3a5b2ba5b47ce17b3 as build
 3  
 4  COPY . /workdir
 5  
 6  RUN rustup target add x86_64-unknown-linux-musl
 7  
 8  WORKDIR /workdir/radicle-node
 9  
10  RUN RUSTFLAGS=-Cforce-frame-pointers=yes \
11    cargo build \
12      --profile=container \
13      --target=x86_64-unknown-linux-musl
14  RUN objcopy \
15    --compress-debug-sections \
16    /workdir/target/x86_64-unknown-linux-musl/container/radicle-node \
17    /workdir/target/x86_64-unknown-linux-musl/container/radicle-node.compressed
18  
19  # Run
20  FROM debian:bullseye-slim@sha256:25f10b4f1ded5341a3ca0a30290ff3cd5639415f0c5a2222d5e7d5dd72952aa1
21  
22  RUN echo deb http://deb.debian.org/debian bullseye-backports main contrib non-free >/etc/apt/sources.list.d/backports.list
23  RUN apt-get update && \
24    apt -t bullseye-backports install --yes git && \
25    rm -rf /var/lib/apt/lists/*
26  COPY --from=build \
27    /workdir/target/x86_64-unknown-linux-musl/container/radicle-node.compressed \
28    /usr/local/bin/radicle-node
29  
30  WORKDIR /app
31  
32  ENTRYPOINT ["/usr/local/bin/radicle-node", "--listen", "0.0.0.0:8776"]