73 lines
1.9 KiB
Markdown
73 lines
1.9 KiB
Markdown
|
|
# ✅ 配置检查清单
|
|||
|
|
|
|||
|
|
## 已完成的检查
|
|||
|
|
|
|||
|
|
### 1. Nginx 配置 ✅
|
|||
|
|
- ✅ `nginx/nginx.conf` 语法正确
|
|||
|
|
- ✅ upstream backend 配置正确
|
|||
|
|
- ✅ proxy_pass 指向正确(`http://backend`)
|
|||
|
|
- ✅ 前端静态文件路径正确(`/usr/share/nginx/html`)
|
|||
|
|
- ✅ API 代理路径正确(`/api/` → `backend:8080`)
|
|||
|
|
|
|||
|
|
### 2. Docker Compose 配置 ✅
|
|||
|
|
- ✅ 服务定义完整(mysql, backend, nginx)
|
|||
|
|
- ✅ 网络配置正确(app-network)
|
|||
|
|
- ✅ 卷映射正确
|
|||
|
|
- ✅ 依赖关系正确(nginx depends_on backend, backend depends_on mysql)
|
|||
|
|
|
|||
|
|
### 3. Dockerfile 配置 ✅
|
|||
|
|
- ✅ `Dockerfile.backend` 包含 wget(用于健康检查)
|
|||
|
|
- ✅ `nginx/Dockerfile` 配置正确
|
|||
|
|
- ✅ 多阶段构建配置正确
|
|||
|
|
|
|||
|
|
### 4. 环境变量配置 ✅
|
|||
|
|
- ✅ docker-compose.yml 中环境变量与 application-prod.properties 匹配
|
|||
|
|
- ✅ 数据库连接字符串正确
|
|||
|
|
|
|||
|
|
### 5. 文件路径检查 ✅
|
|||
|
|
- ✅ `frontend/dist` 目录存在(前端构建产物)
|
|||
|
|
- ✅ `pom.xml` 存在(后端构建文件)
|
|||
|
|
|
|||
|
|
## 潜在问题及修复
|
|||
|
|
|
|||
|
|
### 已修复的问题
|
|||
|
|
1. ✅ **后端健康检查缺少 wget**
|
|||
|
|
- 修复:在 Dockerfile.backend 中添加 `RUN apk add --no-cache wget`
|
|||
|
|
|
|||
|
|
2. ✅ **环境变量不匹配**
|
|||
|
|
- 修复:将 `SPRING_DATASOURCE_*` 改为 `DB_*` 以匹配 application-prod.properties
|
|||
|
|
|
|||
|
|
## 部署前检查清单
|
|||
|
|
|
|||
|
|
在运行 `docker-compose up` 之前,请确保:
|
|||
|
|
|
|||
|
|
- [ ] 前端已构建:`cd frontend && npm run build`
|
|||
|
|
- [ ] Docker 和 Docker Compose 已安装
|
|||
|
|
- [ ] 端口 80、8080、3306 未被占用
|
|||
|
|
- [ ] 有足够的磁盘空间(至少 2GB)
|
|||
|
|
|
|||
|
|
## 验证命令
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 检查 Docker Compose 配置
|
|||
|
|
docker-compose config
|
|||
|
|
|
|||
|
|
# 检查服务状态
|
|||
|
|
docker-compose ps
|
|||
|
|
|
|||
|
|
# 查看日志
|
|||
|
|
docker-compose logs -f nginx
|
|||
|
|
docker-compose logs -f backend
|
|||
|
|
|
|||
|
|
# 测试 Nginx 配置
|
|||
|
|
docker exec demo-nginx nginx -t
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 访问地址
|
|||
|
|
|
|||
|
|
部署成功后:
|
|||
|
|
- 🌐 前端:http://localhost
|
|||
|
|
- 🔗 API:http://localhost/api
|
|||
|
|
- 🏥 健康检查:http://localhost/health
|
|||
|
|
|