mirror of
				https://github.com/0glabs/0g-storage-node.git
				synced 2025-11-04 00:27:39 +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}"
 |