circuitforge-core/docker/orch-entrypoint.sh
pyr0ball cb51ba72bc feat: cf-orch Docker image + Forgejo CI pipeline
Dockerfile.orch — multi-mode image (coordinator | agent):
- coordinator: runs cf-orch coordinator on $CF_ORCH_PORT (default 7700)
- agent: connects to $CF_COORDINATOR_URL, serves $CF_AGENT_GPU_IDS

.forgejo/workflows/docker.yml — publishes on every vN.N.N tag:
- ghcr.io/circuit-forge/cf-orch:latest
- ghcr.io/circuit-forge/cf-orch:vX.Y.Z
- Layer cache via GHA cache backend

Closes #19. Bumps to v0.6.0.
2026-04-03 09:10:29 -07:00

25 lines
689 B
Bash

#!/bin/bash
set -e
MODE="${1:-coordinator}"
PORT="${CF_ORCH_PORT:-7700}"
case "$MODE" in
coordinator)
echo "[cf-orch] Starting coordinator on port $PORT"
exec python -m circuitforge_core.resources.cli coordinator \
--host 0.0.0.0 --port "$PORT"
;;
agent)
COORDINATOR="${CF_COORDINATOR_URL:?CF_COORDINATOR_URL must be set for agent mode}"
GPU_IDS="${CF_AGENT_GPU_IDS:-0}"
echo "[cf-orch] Starting agent — coordinator=$COORDINATOR gpu_ids=$GPU_IDS"
exec python -m circuitforge_core.resources.cli agent \
--coordinator "$COORDINATOR" \
--gpu-ids "$GPU_IDS"
;;
*)
echo "Usage: cf-orch [coordinator|agent]"
exit 1
;;
esac