公共网络独立创建
gateway_net 不属于任何 Compose 项目,服务器初始化时单独创建,多个项目共享使用。
Nginx Gateway 对外提供 80 / 443 端口,Web、COS、Wallpaper、Rawroom 等容器通过公共 gateway_net 互联,数据库服务保持独立网络隔离。
用户流量从公网进入 Gateway。
反向代理统一转发请求,并通过容器名解析上游服务。
gateway_net 不属于任何 Compose 项目,服务器初始化时单独创建,多个项目共享使用。
MySQL 与 Redis 分别使用 mysql-db_net 和 redis-db_net,只有需要访问数据库的后端加入。
先启动 Web 与后端容器,确保上游服务已加入 gateway_net,再启动 Nginx Gateway。
# 首次初始化公共网络
docker network inspect gateway_net >/dev/null 2>&1 || \
docker network create --driver bridge gateway_net
# 推荐启动顺序
docker compose -f db/mysql/docker-compose.yml up -d
docker compose -f db/redis/docker-compose.yml up -d
docker compose -f frontend/web/docker-compose.yml up -d
docker compose -f backend/cos-service/docker-compose.yml up -d
docker compose -f backend/wall-papar-api/docker-compose.yml up -d
docker compose -f backend/rawroom/docker-compose.yml up -d
docker compose -f gateway/docker-compose.yml up -d
# 更新 Gateway
docker compose pull gateway
docker compose up -d gateway
# 更新后检查
docker compose ps
docker compose logs --tail=100 gateway
docker exec gateway nginx -t
# 网络检查
docker network inspect gateway_net
docker exec gateway getent hosts web cos-service wallpaper-api rawroom-server