mirror of
https://github.com/logos-co/nomos-node.git
synced 2026-08-27 09:31:10 +00:00
60 lines
1.9 KiB
Docker
60 lines
1.9 KiB
Docker
# syntax=docker/dockerfile:1
|
|
# check=skip=SecretsUsedInArgOrEnv
|
|
# Ignore warnings about sensitive information as this is test data.
|
|
|
|
ARG LC_CORE_VERSION=0.2.0
|
|
ARG LB_NODE_VERSION=0.2.0
|
|
|
|
# ===========================
|
|
# BUILD IMAGE
|
|
# ===========================
|
|
|
|
FROM debian:trixie-slim AS builder
|
|
|
|
ARG LC_CORE_VERSION
|
|
ARG LB_NODE_VERSION
|
|
|
|
WORKDIR /logos-blockchain
|
|
COPY . .
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
curl \
|
|
ca-certificates \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN scripts/setup-logos-core.sh "$LC_CORE_VERSION" "$(uname -m)-linux"
|
|
|
|
# Patch the AppImage magic bytes to restore standard ELF matching for QEMU
|
|
RUN dd if=/dev/zero of=lgpd bs=1 count=3 seek=8 conv=notrunc && \
|
|
dd if=/dev/zero of=lgpm bs=1 count=3 seek=8 conv=notrunc && \
|
|
dd if=/dev/zero of=logoscore bs=1 count=3 seek=8 conv=notrunc
|
|
|
|
RUN ./lgpd --appimage-extract && mv squashfs-root ext-lgpd && \
|
|
./lgpm --appimage-extract && mv squashfs-root ext-lgpm && \
|
|
./logoscore --appimage-extract && mv squashfs-root ext-logoscore
|
|
|
|
RUN ./ext-lgpd/AppRun download blockchain_module --version "$LB_NODE_VERSION" --output ./ && \
|
|
./ext-lgpm/AppRun --modules-dir ./modules install --file "blockchain_module-${LB_NODE_VERSION}.lgx"
|
|
|
|
# ===========================
|
|
# NODE IMAGE
|
|
# ===========================
|
|
|
|
FROM debian:trixie-slim
|
|
|
|
LABEL maintainer="augustinas@status.im" \
|
|
source="https://github.com/logos-blockchain/logos-blockchain" \
|
|
description="Logos blockchain node image"
|
|
|
|
# curl: allows querying the node's REST API from within the container without exposing it publicly
|
|
# yq: allows patching user_config.yaml after it is generated by `logos-blockchain-node init`
|
|
RUN apt-get update && apt-get install -y --no-install-recommends curl yq && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=builder /logos-blockchain/ext-logoscore /opt/logoscore
|
|
COPY --from=builder /logos-blockchain/modules /opt/modules
|
|
|
|
EXPOSE 3000 8080 9000 60000
|
|
|
|
ENTRYPOINT ["logoscore"]
|