shibarium: build heimdall from source (cometbft.Dockerfile)
A parallel change reverted this to FROM shibaone/heimdall:v1.0.7-bone — an image
that exists on no registry, so the heimdall build fails. Restore the source build:
clone shibaone/heimdall@${CL_VERSION}, make install, then layer the CometBFT init
entrypoint. Pairs with vibe-node PR (node_build + standalone service name).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit was merged in pull request #15.
This commit is contained in:
@@ -1,25 +1,39 @@
|
|||||||
# Shibarium heimdall node Dockerfile
|
# Shibarium heimdall consensus node — BUILT FROM SOURCE.
|
||||||
# Build from the base heimdall image + copy entrypoint scripts.
|
#
|
||||||
# Uses the standard cometbft-node pattern from vibe-node.
|
# shibaone publishes NO heimdall docker image (only source + release .deb config
|
||||||
|
# packages), so we cannot `FROM shibaone/heimdall:<tag>` — that tag does not exist
|
||||||
|
# on any registry. Mirror the upstream shibaone/heimdall Dockerfile (`make install`)
|
||||||
|
# but clone the pinned tag, then layer the vibe-node CometBFT init entrypoint.
|
||||||
#
|
#
|
||||||
# Build args:
|
# Build args:
|
||||||
# CL_IMAGE - base heimdall image (default: shibaone/heimdall)
|
# CL_REPO - heimdall source repo (default: https://github.com/shibaone/heimdall)
|
||||||
# CL_VERSION - heimdall version tag
|
# CL_VERSION - heimdall version tag (passed by the template, e.g. v1.0.7-bone)
|
||||||
#
|
#
|
||||||
# The entrypoint is init.sh which sources cometbft-common.sh and bootstraps
|
# `make install` puts heimdalld + heimdallcli on /go/bin (already on PATH). The
|
||||||
# the node before exec'ing heimdalld start.
|
# entrypoint is init.sh: it sources cometbft-common.sh, runs heimdalld init
|
||||||
|
# --chain shibarium, fetches the heimdall-109 genesis from GENESIS_URL, sets the
|
||||||
|
# shibarium seeds, then exec's `heimdalld start --rest-server`.
|
||||||
|
|
||||||
ARG CL_IMAGE=shibaone/heimdall
|
ARG CL_REPO=https://github.com/shibaone/heimdall
|
||||||
ARG CL_VERSION=v1.0.7-bone
|
ARG CL_VERSION=v1.0.7-bone
|
||||||
|
|
||||||
FROM ${CL_IMAGE}:${CL_VERSION}
|
FROM golang:1.22
|
||||||
|
|
||||||
# Copy the shared CometBFT helpers and chain-specific entrypoint
|
ARG CL_REPO
|
||||||
|
ARG CL_VERSION
|
||||||
|
|
||||||
|
RUN apt-get update -y && apt-get upgrade -y \
|
||||||
|
&& apt-get install -y --no-install-recommends build-essential git curl jq ca-certificates \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
WORKDIR /var/lib/heimdall
|
||||||
|
RUN git clone --depth 1 --branch ${CL_VERSION} ${CL_REPO} . \
|
||||||
|
&& make install
|
||||||
|
|
||||||
|
# vibe-node CometBFT bootstrap entrypoint (build context is ./shibarium)
|
||||||
COPY ./scripts/cometbft-common.sh /usr/local/bin/cometbft-common.sh
|
COPY ./scripts/cometbft-common.sh /usr/local/bin/cometbft-common.sh
|
||||||
COPY ./scripts/init.sh /usr/local/bin/init.sh
|
COPY ./scripts/init.sh /usr/local/bin/init.sh
|
||||||
|
RUN chmod +x /usr/local/bin/init.sh /usr/local/bin/cometbft-common.sh
|
||||||
|
|
||||||
# Make init.sh executable
|
EXPOSE 1317 26656 26657
|
||||||
RUN chmod +x /usr/local/bin/init.sh
|
|
||||||
|
|
||||||
# Set entrypoint to our init script
|
|
||||||
ENTRYPOINT ["init.sh"]
|
ENTRYPOINT ["init.sh"]
|
||||||
|
|||||||
Reference in New Issue
Block a user