mirror of
https://github.com/0glabs/0g-storage-node.git
synced 2025-11-03 16:17:27 +00:00
30 lines
1.2 KiB
Docker
30 lines
1.2 KiB
Docker
|
|
# ---------- Dockerfile ----------
|
|||
|
|
FROM rust
|
|||
|
|
|
|||
|
|
# 0) Install build deps (same as you had)
|
|||
|
|
RUN apt-get update && \
|
|||
|
|
apt-get install -y clang cmake build-essential pkg-config libssl-dev
|
|||
|
|
|
|||
|
|
# 1) Copy sources and build the binary
|
|||
|
|
WORKDIR /app
|
|||
|
|
COPY . .
|
|||
|
|
RUN cargo build --release
|
|||
|
|
|
|||
|
|
# 2) Keep the binary on $PATH (optional convenience)
|
|||
|
|
RUN install -Dm755 target/release/zgs_node /usr/local/bin/zgs_node
|
|||
|
|
|
|||
|
|
# 3) Persist chain data
|
|||
|
|
VOLUME ["/data"]
|
|||
|
|
|
|||
|
|
###############################################################################
|
|||
|
|
# 4) Runtime flags – grab everything from env vars that you’ll pass with
|
|||
|
|
# `docker run -e …`. Shell-form CMD lets us interpolate ${…} at start-time.
|
|||
|
|
###############################################################################
|
|||
|
|
CMD zgs_node \
|
|||
|
|
--config run/config-testnet-turbo.toml \
|
|||
|
|
--log-config-file run/log_config \
|
|||
|
|
--miner-key "${STORAGE_MINER_PRIVATE_KEY:?missing STORAGE_MINER_PRIVATE_KEY}" \
|
|||
|
|
--blockchain-rpc-endpoint "${STORAGE_BLOCKCHAIN_RPC_ENDPOINT:?missing STORAGE_BLOCKCHAIN_RPC_ENDPOINT}" \
|
|||
|
|
--network-enr-address "${STORAGE_ENR_ADDRESS:?missing STORAGE_ENR_ADDRESS}" \
|
|||
|
|
--db-max-num-chunks "${STORAGE_DB_MAX_NUM_SECTORS:-8000000000}"
|