#
养鸡场管理系统部署说明
本文档详细说明了如何部署养鸡场管理系统。
## 部署步骤
### 1. 拷贝文件到服务器
将 `Deployment` 目录下的所有内容拷贝到目标服务器上。
### 2. 导入 Docker 镜像
使用命令行工具,进入 `images` 目录,导入该目录下的 Docker 镜像:
```bash
cd /path/to/images
# /path/to/换成自己的实际目录
# 导入MySQL镜像
docker load -i mysql_8.0.42.tar
# 导入Redis镜像
docker load -i redis_7.2.8.tar
# 导入后端服务镜像
docker load -i cf_admin-server.tar
# 导入前端服务镜像
docker load -i cf_admin-ui.tar
# 导入任务调度镜像
docker load -i cf-job-server.tar
```
> 注意:具体的导入命令取决于镜像文件的格式及名称,请根据实际情况调整命令。
### 3. 运行 docker-compose
切换目录到 `chicken_farm`,运行以下命令启动服务:
```bash
cd /path/to/chicken_farm
# /path/to/换成自己的实际目录
docker-compose up -d
```
该命令将根据 [docker-compose.yml](chicken_farm/docker-compose.yml) 文件中定义的服务启动所有相关容器。
> 注意:运行前请检查端口(MySQL:3306、Redis:6379、后端:8080、前端:80)是否被占用,如果某些端口被占用,请修改 `docker-compose.yml` 文件中的端口映射配置,再运行 docker-compose up -d 命令。
运行完成后,将包含以下服务:
- MySQL 数据库服务(端口: 3306)
- Redis 服务(端口: 6379)
- 后端服务(端口: 8080)
- 前端服务(端口: 80)
- 任务调度服务(端口: 6076)
> 注意:如果前端服务启动失败,请等待后端服务启动完成后,再重新启动前端服务。
所有服务正常运行后,使用浏览器访问 http://your-server-ip:80 访问系统。
> 注意:首次部署完成之后,系统中翅号只有000000-000040,其它翅号数量多,没有放到init.sql中,建库完成后,可以手动执行generate_wing_tags_batched储存过程完成000041-999999的创建。
> 执行命令:
> ```bash
> mysql -h localhost -P 3306 -u root -p
> ```
> 输入密码后,执行以下命令:
> ```bash
> use chickenfarmdb_v1;
> call generate_wing_tags_batched();
> ```
### 4. 镜像升级
当需要升级系统时,请按以下步骤操作:
1. 停止当前运行的服务:
```bash
cd /path/to/chicken_farm
# /path/to/换成自己的实际目录
docker-compose down
```
2. 备份重要数据:
```bash
# 备份数据库数据
cp -r ./mysql/data /path/to/backup/mysql_data_$(date +%Y%m%d)
# 备份Redis数据
cp -r ./redis/data /path/to/backup/redis_data_$(date +%Y%m%d)
```
3. 导入新的升级镜像:
```bash
cd /path/to/images
# 根据实际的镜像文件格式执行导入命令,例如:
# docker load -i new_image_name.tar
```
4. 如有配置文件变更,请先备份原配置文件,再用新配置文件覆盖:
```bash
# 备份并覆盖配置文件示例(根据实际情况调整)
cp ./nginx/conf/default.conf /path/to/backup/default.conf.backup
# cp new_default.conf ./nginx/conf/default.conf
```
5. 启动服务:
```bash
cd /path/to/chicken_farm
# /path/to/换成自己的实际目录
docker-compose up -d
```
## 注意事项
1. 请确保服务器已安装 Docker 和 docker-compose。
2. 部署前请检查端口是否被占用。
3. 如需修改配置,请在运行 docker-compose 命令前完成相关配置文件的修改。
4. 升级前务必备份重要数据。
5. 升级过程中服务会短暂中断,请选择合适的时间进行升级操作。