主题
Docker-compose方式部署

一、Docker-compose方式部署
1.1 准备工作
1.1.1 提供 docker/docker-compose 环境
安装过程参考:二进制部署 docker & docker-compose
1.1.2 修改 Nacos 数据库源地址
找到后端代码根目录下 pig-register/src/main/resources/application.properties,修改数据库连接信息,改为容器 service 名称:
properties
db.url.0=jdbc:mysql://${MYSQL_HOST:pig-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pig_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
db.user=root
db.password=root1.2 准备前端/后端包
- 构建前端包
bash
git clone https://gitee.com/log4j/pig-ui.git
cd pig-ui
npm install
npm run build
- 构建后端包
bash
cd pig
mvn clean install -Pcloud -DskipTests
1.3 部署前端包并启动前端服务
拷贝 dist 目录内容到 Nginx 容器外挂载的 /home/application/nginx/dist 目录下:
bash
# 进入到代码的根目录下
cd /root/pig-ui
# 拷贝制品包内容
cp -rp dist/* /home/application/nginx/dist/
# 运行前端容器
cd /home/application/nginx
docker-compose up -d
docker-compose ps示例输出:
text
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
nginx docker.cnb.cool/srebro/docker-images-chrom/nginx:1.30.4_amd64 "/docker-entrypoint.…" nginx 12 days ago Up 3 days 0.0.0.0:80->80/tcp, [::]:80->80/tcp1.4 部署后端镜像并启动后端服务
bash
# 进入到后端代码的根目录下
cd pig
docker-compose build
docker-compose up -d
docker-compose ps示例输出:
text
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
pig-auth pig-auth "/bin/sh -c 'sleep 3…" pig-auth 31 seconds ago Up 26 seconds 3000/tcp
pig-codegen pig-codegen "/bin/sh -c 'sleep 3…" pig-codegen 31 seconds ago Up 26 seconds 5003/tcp
pig-gateway pig-gateway "/bin/sh -c 'sleep 3…" pig-gateway 31 seconds ago Up 26 seconds 0.0.0.0:9999->9999/tcp, [::]:9999->9999/tcp
pig-monitor pig-monitor "/bin/sh -c 'sleep 3…" pig-monitor 31 seconds ago Up 27 seconds 0.0.0.0:5001->5001/tcp, [::]:5001->5001/tcp
pig-mysql pig-mysql "/entrypoint.sh --lo…" pig-mysql 31 seconds ago Up 26 seconds (health: starting) 3306/tcp, 33060-33061/tcp
pig-quartz pig-quartz "/bin/sh -c 'sleep 3…" pig-quartz 31 seconds ago Up 25 seconds 5007/tcp
pig-redis registry.cn-hangzhou.aliyuncs.com/dockerhub_mirror/redis "docker-entrypoint.s…" pig-redis 31 seconds ago Up 25 seconds 6379/tcp
pig-register pig-register "/bin/sh -c 'sleep 1…" pig-register 31 seconds ago Up 25 seconds 0.0.0.0:8848->8848/tcp, [::]:8848->8848/tcp, 0.0.0.0:9848->9848/tcp, [::]:9848->9848/tcp, 0.0.0.0:18080->18080/tcp, [::]:18080->18080/tcp
pig-upms pig-upms "/bin/sh -c 'sleep 3…" pig-upms 31 seconds ago Up 25 seconds 4000/tcp1.5 访问 Nacos 管理页面
WARNING
- 必须取保Nacos 服务(
pig-register),运行成功,因为它是注册中心;否则其他服务无法注册,也就无法启动。 - 启动 Nacos 后,还需要修改 Nacos 中的 Redis、MySQL 配置,否则其他服务无法启动。
- 访问 Nacos 管理页面
TIP
端口 18080,访问:http://172.22.33.90:18080(默认账号密码 nacos/nacos)

- 修改 Nacos 中 Redis、MySQL 配置

| 配置文件 Data Id | 修改配置信息 |
|---|---|
application-dev.yml | Redis 配置 |
pig-upms-biz-dev.yml | 数据库链接信息 |
pig-codegen-dev.yml | 数据库链接信息 |
pig-quartz-dev.yml | 数据库链接信息 |
- 查看 Nacos 服务列表实例数

1.6 访问项目
TIP
浏览器访问:http://172.22.33.90,默认用户名:admin,默认密码:123456



