Operators

Run and deploy Silica nodes

The repo ships the pieces you need for local builds, multi-arch container publishing, and environment-specific rollout through the infrastructure stacks.

Environment stacks

The infrastructure repo is organized around an env-first layout so operators can move from local or dev setups to testnet and production stacks without changing mental models.

core/

Shared services like static sites and observability foundations.

dev/

Low-cost development services for iterative testing and app integration.

testnet/

Operational testnet stacks, Kubernetes manifests, and rollout tooling.

mainnet/

Production-oriented AWS, Azure, Ansible, Docker, and environment guides.

1. Build locally

# Local binary
cargo build --bin silica --release

# Quality gates
cargo fmt --all
cargo clippy --all-targets --all-features -- -D warnings
cargo test --workspace

2. Publish a node image

docker buildx build \
  --builder silica-builder \
  --platform linux/amd64,linux/arm64 \
  -t silicaprotocol/silica-node:testnet-latest \
  --push .

3. Roll out to testnet

cd infrastructure/opentofu/testnet/oci

python3 scripts/silica_nodes.py --user silica set-image \
  --image silicaprotocol/silica-node:testnet-latest

python3 scripts/silica_nodes.py --user silica update

Operational checkpoints

  • • Verify builder availability with docker buildx ls
  • • Run fmt, clippy, and workspace tests before publishing images
  • • Track common tags like testnet-latest, latest, and version tags
  • • Keep the primary node Dockerfile aligned with the cargo-chef pipeline

Health and observability

  • • Monitor node health through /health, /info, and /metrics
  • • Use the infrastructure observability/ assets and stack-specific manifests
  • • Treat rollout, sync lag, and validator progress as first-class operator signals
  • • Start infrastructure navigation in infrastructure/opentofu/README.md

From binary to fleet

Silica’s deployment story is already split cleanly across local builds, container publishing, and environment-specific infrastructure. These pages are here to make that operator path discoverable from the public site.