82 lines
2.1 KiB
YAML
82 lines
2.1 KiB
YAML
# ============================================
|
|
# 云睿资产管理系统 - 开发环境配置
|
|
# 使用 build 指令本地构建镜像
|
|
# ============================================
|
|
|
|
version: '3.8'
|
|
|
|
services:
|
|
# ---------- 后端服务 ----------
|
|
backend:
|
|
build:
|
|
context: ./backend
|
|
dockerfile: Dockerfile
|
|
container_name: yunrui_asset-backend-dev
|
|
volumes:
|
|
# 配置映射(核心)
|
|
- ./backend/.env:/app/.env
|
|
# 数据持久化
|
|
- ./backend/uploads:/app/uploads
|
|
- ./backend/logs:/app/logs
|
|
- ./backend/backups:/app/backups
|
|
- ./backend/temp:/app/temp
|
|
env_file:
|
|
- ./backend/.env
|
|
environment:
|
|
- NODE_ENV=development
|
|
# 连接 docker-compose 内的 MySQL 时,注释掉下方 MYSQL_HOST 的注释
|
|
# 连接远程 MySQL 时,保持 .env 中的配置即可
|
|
networks:
|
|
- yunrui_asset-network
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8000/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 30s
|
|
|
|
# ---------- 前端(Nginx)服务 ----------
|
|
frontend:
|
|
build:
|
|
context: ./frontend
|
|
dockerfile: Dockerfile
|
|
container_name: yunrui_asset-frontend-dev
|
|
ports:
|
|
- "80:80"
|
|
networks:
|
|
- yunrui_asset-network
|
|
depends_on:
|
|
- backend
|
|
restart: unless-stopped
|
|
|
|
# ---------- MySQL 数据库 ----------
|
|
# 如需使用本地 MySQL 容器,取消下方注释
|
|
# mysql:
|
|
# image: mysql:8.0
|
|
# container_name: yunrui_asset-mysql-dev
|
|
# volumes:
|
|
# - mysql_data:/var/lib/mysql
|
|
# environment:
|
|
# MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-root123}
|
|
# MYSQL_DATABASE: yunrui_management
|
|
# MYSQL_USER: yunrui_user
|
|
# MYSQL_PASSWORD: ${MYSQL_PASSWORD:-idc_pass}
|
|
# ports:
|
|
# - "3306:3306"
|
|
# networks:
|
|
# - yunrui_asset-network
|
|
# restart: unless-stopped
|
|
# healthcheck:
|
|
# test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
|
|
# interval: 10s
|
|
# timeout: 5s
|
|
# retries: 5
|
|
|
|
networks:
|
|
yunrui_asset-network:
|
|
driver: bridge
|
|
|
|
# volumes:
|
|
# mysql_data:
|