version: '3.8' # 使用较新的 Compose 文件格式版本 services: backend: build: context: . # 构建上下文是项目根目录 dockerfile: packages/backend/Dockerfile # 指定后端 Dockerfile 路径 container_name: nexus_backend # 给容器一个明确的名字 ports: - "3001:3001" # 将容器的 3001 端口映射到宿主机的 3001 端口 environment: NODE_ENV: production PORT: 3001 volumes: - ./data:/app/data # 确保宿主机上的 ./data 目录存在或 Docker 会创建它 networks: - nexus_network # 将服务连接到自定义网络 frontend: build: context: . # 构建上下文是项目根目录 dockerfile: packages/frontend/Dockerfile # 指定前端 Dockerfile 路径 container_name: nexus_frontend # 给容器一个明确的名字 ports: - "8080:80" # 将容器的 80 端口 (Nginx) 映射到宿主机的 8080 端口 depends_on: - backend # 确保后端服务先启动(但不保证完全就绪) networks: - nexus_network # 将服务连接到自定义网络 networks: nexus_network: # 定义自定义网络 driver: bridge # 使用默认的 bridge 驱动 volumes: # 如果上面定义了卷,这里可以进一步配置(可选) data: {} # 定义一个名为 data 的卷