Files
nomos-node/tests/testing_framework/assets/runtime/Dockerfile.node
T

54 lines
1.6 KiB
Docker

# syntax=docker/dockerfile:1
# check=skip=SecretsUsedInArgOrEnv
ARG LOGOS_CIRCUITS_VERSION
FROM rust:1.94.0-slim-bookworm AS cfgsync-builder
WORKDIR /logos-blockchain-testing
COPY --from=logos_blockchain_testing . /logos-blockchain-testing
RUN apt-get update && apt-get install -yq \
git gcc g++ clang libssl-dev pkg-config ca-certificates curl \
&& rm -rf /var/lib/apt/lists/*
RUN cargo build --locked --release \
-p cfgsync-runtime \
--bin cfgsync-client
FROM rust:1.94.0-slim-bookworm AS builder
ARG LOGOS_CIRCUITS_VERSION
WORKDIR /workspace
COPY . .
COPY --from=logos_blockchain_testing . /logos-blockchain-testing
RUN apt-get update && apt-get install -yq \
git gcc g++ clang libssl-dev pkg-config ca-certificates curl unzip \
&& rm -rf /var/lib/apt/lists/*
RUN test -n "${LOGOS_CIRCUITS_VERSION}"
RUN scripts/setup-logos-blockchain-circuits.sh "${LOGOS_CIRCUITS_VERSION}" /opt/circuits
ENV LOGOS_BLOCKCHAIN_CIRCUITS=/opt/circuits
RUN cargo build --locked --release \
-p logos-blockchain-node \
--features testing \
--bin logos-blockchain-node
FROM debian:bookworm-slim AS base
RUN apt-get update && apt-get install -yq \
libstdc++6 libssl3 ca-certificates curl \
&& rm -rf /var/lib/apt/lists/*
COPY --from=builder /opt/circuits /opt/circuits
COPY --from=builder /workspace/target/release/logos-blockchain-node /usr/bin/logos-blockchain-node
COPY --from=cfgsync-builder /logos-blockchain-testing/target/release/cfgsync-client /usr/bin/cfgsync-client
ENV LOGOS_BLOCKCHAIN_CIRCUITS=/opt/circuits
ENTRYPOINT ["/usr/bin/logos-blockchain-node"]