material_manage_system/DEPLOY.md

121 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Docker 部署指南
## 项目简介
仓库物料管理系统 (WMMS) - 前后端分离架构
- **后端**: Go + Gin + MySQL (端口 8082)
- **前端**: Vue 3 + Vite + Nginx (端口 80)
- **数据库**: MySQL 8.0 (端口 3306)
## 快速启动 (Windows)
### 前置条件
1. 安装 [Docker Desktop](https://www.docker.com/products/docker-desktop/) (Windows 10/11)
2. 启动 Docker Desktop
### 启动服务
```bash
# 进入项目目录
cd c:\1111\12.project\VSCode\warehouse-mms
# 启动所有服务
docker-compose up -d
# 查看服务状态
docker-compose ps
```
### 访问应用
- 前端地址: http://localhost
- 后端API: http://localhost:8082/api
- 健康检查: http://localhost:8082/api/health
### 默认用户
| 用户名 | 密码 | 角色 |
|--------|------|------|
| admin | admin123 | 管理员 |
| user | user123 | 普通用户 |
## 常用命令
```bash
# 查看日志
docker-compose logs -f
# 查看后端日志
docker-compose logs -f backend
# 停止服务
docker-compose down
# 重新构建并启动
docker-compose up -d --build
# 删除所有数据(谨慎操作)
docker-compose down -v
```
## 数据持久化
- **MySQL数据**: `mysql_data` Docker volume
- **上传文件**: `uploads_data` Docker volume
## 环境变量
| 变量 | 默认值 | 说明 |
|------|--------|------|
| DB_DSN | root:wmms1234@tcp(db:3306)/wmms?charset=utf8mb4&parseTime=true | 数据库连接字符串 |
| GIN_MODE | release | Gin 运行模式 |
## 手动构建
```bash
# 构建后端
docker build -t wmms-backend .
# 构建前端
cd frontend
docker build -t wmms-frontend .
# 启动
docker-compose up -d
```
## 故障排查
### 端口冲突
如果 80 或 3306 端口被占用:
```bash
# 查看端口占用
netstat -ano | findstr ":80"
netstat -ano | findstr ":3306"
# 修改 docker-compose.yml 中的端口映射
```
### 数据库连接失败
```bash
# 检查数据库是否就绪
docker-compose logs db
# 等待数据库启动完成(约10秒)
```
### 查看容器内部
```bash
# 进入后端容器
docker exec -it wmms-backend sh
# 进入数据库容器
docker exec -it wmms-db mysql -u root -p
```