Files
AiTool/docker-compose.dev.yml
2026-03-18 17:01:10 +08:00

44 lines
1.3 KiB
YAML

# 开发模式:代码挂载 + 内部热重载,无需重建镜像即可生效(类似 K8s 仅更新配置/代码并滚动重启)
# 使用方式: docker compose -f docker-compose.yml -f docker-compose.dev.yml up
# 或: ./docker_dev.sh dev
services:
backend:
build:
context: .
dockerfile: Dockerfile.backend
container_name: ops-core-backend
env_file:
- .env
volumes:
- ./data:/app/data
# 挂载代码:宿主机修改后由 uvicorn --reload 自动重启进程,无需重建容器
- ./backend:/app/backend
ports:
- "8000:8000"
# 仅重启进程,不重启容器;代码变更由 reload 自动加载
command: uvicorn backend.app.main:app --host 0.0.0.0 --port 8000 --reload
frontend:
build:
context: ./frontend_spa
dockerfile: Dockerfile.dev
image: aitool-frontend-dev
working_dir: /app
container_name: ops-core-frontend
volumes:
- ./frontend_spa:/app
- frontend_spa_node_modules:/app/node_modules
# 宿主机 3001 避免与占用 3000 的进程冲突;访问 http://localhost:3001
ports:
- "3000:3000"
environment:
NODE_ENV: development
VITE_DEV_PROXY_TARGET: http://backend:8000
# 开发模式:命令在 Dockerfile.dev 的 CMD 中
depends_on:
- backend
volumes:
frontend_spa_node_modules: