22301111 | e04603d | 2025-06-05 21:03:44 +0800 | [diff] [blame^] | 1 | services: |
| 2 | # 后端服务 |
| 3 | backend: |
| 4 | build: |
| 5 | context: . # 指向Java项目目录 |
| 6 | ports: |
| 7 | - "5011:5011" |
| 8 | environment: |
| 9 | SPRING_PROFILES_ACTIVE: "prod" |
| 10 | # 确保时区和SSL参数一致 |
| 11 | SPRING_DATASOURCE_URL: "jdbc:mysql://202.205.102.121:3306/echodevelop?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true" |
| 12 | SPRING_DATASOURCE_USERNAME: "team11" |
| 13 | SPRING_DATASOURCE_PASSWORD: "Team11000#" |
| 14 | volumes: |
| 15 | - ./uploads:/app/uploads # 挂载上传目录 |
| 16 | networks: |
| 17 | - app-network |
| 18 | # dockerfile: Dockerfile |
| 19 | restart: unless-stopped |
| 20 | |
| 21 | # 前端服务 |
| 22 | frontend: |
| 23 | build: # 指向React项目目录,仅构建静态文件 |
| 24 | context: ../echo-frontend # 确保构建上下文包含所有文件 |
| 25 | depends_on: |
| 26 | - backend |
| 27 | networks: |
| 28 | - app-network |
| 29 | # dockerfile: Dockerfile |
| 30 | restart: unless-stopped |
| 31 | |
| 32 | nginx: |
| 33 | image: nginx:alpine |
| 34 | ports: |
| 35 | - "3011:80" # 暴露 HTTP 端口 |
| 36 | # - "443:443" # 若需 HTTPS 则暴露 443 |
| 37 | volumes: |
| 38 | - ../echo-frontend/nginx.conf:/etc/nginx/conf.d/default.conf # 挂载 Nginx 配置 |
| 39 | - ../echo-frontend/build:/usr/share/nginx/html # 确保路径指向构建目录 |
| 40 | - ./uploads:/usr/share/nginx/html/uploads # 让前端能访问上传目录 |
| 41 | depends_on: |
| 42 | - frontend |
| 43 | - backend |
| 44 | networks: |
| 45 | - app-network |
| 46 | |
| 47 | networks: |
| 48 | app-network: # 自定义网络确保容器互通 |