From 1a7c9fdac32c6d38e5a8d1be05010baacfee8440 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 16 Sep 2026 10:33:07 +0200 Subject: [PATCH] gitea runs on the host network at genesis So it reaches the substrate store's loopback-published postgres and answers where mesh-bootstrap and the builder look for it. Claude-Session: https://claude.ai/code/session_01D6qtiYU3P9jk3pnAXyAFyx --- internal/bootstrap/phase_packages.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/bootstrap/phase_packages.go b/internal/bootstrap/phase_packages.go index 57664ef..80d5292 100644 --- a/internal/bootstrap/phase_packages.go +++ b/internal/bootstrap/phase_packages.go @@ -162,7 +162,10 @@ func raiseGiteaServer(ctx context.Context, run Runner, timeout time.Duration, db } args := append([]string{ "run", "-d", "--name", giteaBootstrap, - "--network", "container:" + substrateStore, + // Host network, like the control plane: it reaches the substrate store on the machine's + // loopback (where the store publishes 5432) and answers on the machine's own 3000, which is + // where mesh-bootstrap and the builder's build containers look for it. + "--network", "host", "--restart", "unless-stopped", }, env...) args = append(args, giteaImage)