42 lines
910 B
YAML
42 lines
910 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
# 前端 Nginx 服务
|
|
nginx:
|
|
image: nginx:alpine
|
|
container_name: ai-learning-nginx
|
|
ports:
|
|
- "8080:80"
|
|
- "8443:443"
|
|
volumes:
|
|
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
|
- ../frontend/dist:/usr/share/nginx/html:ro
|
|
- ./logs:/var/log/nginx
|
|
depends_on:
|
|
- backend
|
|
restart: unless-stopped
|
|
networks:
|
|
- ai-learning-network
|
|
|
|
# 后端服务
|
|
backend:
|
|
build:
|
|
context: .. # 使用项目根目录作为构建上下文
|
|
dockerfile: backend/Dockerfile
|
|
container_name: ai-learning-backend
|
|
ports:
|
|
- "3001:3001"
|
|
environment:
|
|
- NODE_ENV=production
|
|
- PORT=3001
|
|
- DATABASE_URL=file:./prisma/dev.db
|
|
volumes:
|
|
- ../backend/prisma:/app/prisma
|
|
restart: unless-stopped
|
|
networks:
|
|
- ai-learning-network
|
|
|
|
networks:
|
|
ai-learning-network:
|
|
driver: bridge
|