refactor: extract nginx to standalone nginx-gateway deployment

- Remove coze-web service from docker-compose.yml
- Replace nginx second stage in frontend/Dockerfile with alpine dist-only stage
- Add nginx-gateway/ with standalone nginx container deployment
  - docker-compose.yml joining both coze-network and kong-net
  - Split nginx configs into 6 per-domain files:
    - 00-upstreams.conf (shared upstreams)
    - 10-default-server.conf (catch-all 444)
    - 20-coze.conf (coze studio)
    - 30-kong-api.conf (kong ai gateway)
    - 40-admin-portal.conf (admin portal)
    - 50-grafana.conf (grafana dashboard)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-14 15:06:15 +08:00
parent 6bed393c12
commit 87d6dcc293
10 changed files with 322 additions and 38 deletions
+27
View File
@@ -0,0 +1,27 @@
name: nginx-gateway
services:
nginx-gateway:
image: nginx:1.25-alpine
container_name: nginx-gateway
restart: always
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
- ./conf.d:/etc/nginx/conf.d:ro
- ./ssl:/etc/nginx/ssl:ro
- ./dist:/usr/share/nginx/html:ro
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
networks:
- coze-network
- kong-net
networks:
coze-network:
external: true
kong-net:
external:
name: kong-ai-gateway-prod_kong-net