diff --git a/apps/cli/infra/compose.yml b/apps/cli/infra/compose.yml index df8fbde7..bcc3f6f7 100644 --- a/apps/cli/infra/compose.yml +++ b/apps/cli/infra/compose.yml @@ -32,7 +32,7 @@ services: ports: - "127.0.0.1:3456:3456" volumes: - - ./router-config.json:/config/router-config.json:ro + - ./router-config.json:/config/router-config.json:ro,z environment: - HOST=0.0.0.0 - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-} diff --git a/apps/cli/src/docker.ts b/apps/cli/src/docker.ts index 9080f645..b657fc15 100644 --- a/apps/cli/src/docker.ts +++ b/apps/cli/src/docker.ts @@ -17,6 +17,7 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url)); const NPX_IMAGE_REPO = 'keygraph/shannon'; const DEV_IMAGE = 'shannon-worker'; +const COMPOSE_PROJECT = 'infra'; export function getWorkerImage(version: string): string { return getMode() === 'local' ? DEV_IMAGE : `${NPX_IMAGE_REPO}:${version}`; @@ -82,17 +83,19 @@ function isRouterReady(): boolean { export async function ensureInfra(useRouter: boolean): Promise { const temporalReady = isTemporalReady(); const routerNeeded = useRouter && !isRouterReady(); + const startRouterOnly = temporalReady && routerNeeded; if (temporalReady && !routerNeeded) { return; } const composeFile = getComposeFile(); - const composeArgs = ['compose', '-f', composeFile]; + const composeArgs = ['compose', '-p', COMPOSE_PROJECT, '-f', composeFile]; if (useRouter) composeArgs.push('--profile', 'router'); composeArgs.push('up', '-d'); + if (startRouterOnly) composeArgs.push('router'); - if (temporalReady && routerNeeded) { + if (startRouterOnly) { console.log('Starting router...'); } else { console.log('Starting Shannon infrastructure...'); @@ -288,7 +291,7 @@ export function stopWorkers(): void { */ export function stopInfra(clean: boolean): void { const composeFile = getComposeFile(); - const args = ['compose', '-f', composeFile, '--profile', 'router', 'down']; + const args = ['compose', '-p', COMPOSE_PROJECT, '-f', composeFile, '--profile', 'router', 'down']; if (clean) args.push('-v'); execFileSync('docker', args, { stdio: 'inherit' }); } diff --git a/docker-compose.yml b/docker-compose.yml index 6c0e5a4e..ca5b1943 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -34,7 +34,7 @@ services: ports: - "127.0.0.1:3456:3456" volumes: - - ./apps/cli/infra/router-config.json:/config/router-config.json:ro + - ./apps/cli/infra/router-config.json:/config/router-config.json:ro,z environment: - HOST=0.0.0.0 - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}