From 47805b202f830bd5616acab0551d15f7325a3564 Mon Sep 17 00:00:00 2001 From: VMIS Developer Date: Sun, 15 Mar 2026 23:48:26 +0800 Subject: [PATCH] feat: add vmis-backend-test container config and fix test env route MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add docker/vmis-test/ with separate .env (10.1.0.20:5433) and docker-compose - Route YAML: is_active=False → vmis-backend-test, is_active=True → vmis-backend - Test and production managers now use independent backend containers Co-Authored-By: Claude Sonnet 4.6 --- .../app/services/scheduler/schedule_tenant.py | 3 ++- docker/vmis-test/docker-compose.yml | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 docker/vmis-test/docker-compose.yml diff --git a/backend/app/services/scheduler/schedule_tenant.py b/backend/app/services/scheduler/schedule_tenant.py index e1071fa..02c696e 100644 --- a/backend/app/services/scheduler/schedule_tenant.py +++ b/backend/app/services/scheduler/schedule_tenant.py @@ -201,6 +201,7 @@ def _generate_tenant_route_yaml(tenant, is_active: bool) -> str: if tenant.is_manager: # Manager 租戶:/admin → vmis-backend,/api → vmis-backend,根路徑 → NC Drive + vmis_backend_url = "http://vmis-backend:10281" if is_active else "http://vmis-backend-test:10281" lines += [ " middlewares:", " vmis-strip-admin:", @@ -248,7 +249,7 @@ def _generate_tenant_route_yaml(tenant, is_active: bool) -> str: f" {code}-vmis:", " loadBalancer:", " servers:", - ' - url: "http://vmis-backend:10281"', + f' - url: "{vmis_backend_url}"', ] else: lines += [ diff --git a/docker/vmis-test/docker-compose.yml b/docker/vmis-test/docker-compose.yml new file mode 100644 index 0000000..e3fec77 --- /dev/null +++ b/docker/vmis-test/docker-compose.yml @@ -0,0 +1,16 @@ +services: + vmis-backend-test: + image: vmis-backend:latest + container_name: vmis-backend-test + restart: unless-stopped + env_file: .env + volumes: + - /home/porsche/.ssh:/root/.ssh:ro + networks: + - traefik-network + labels: + - "traefik.enable=false" + +networks: + traefik-network: + external: true