Powerjob部署
快速开始(docker-compose版)

环境要求
本地需要安装docker和docker-compose
1. 下载项目
1 | git clone --depth=1 https://github.com/PowerJob/PowerJob.git |
2. 运行
在正式运行之前,首先需要删除低版本 powerjob 相关依赖
1 | # 一键删除命令 |
1 | # 进入到PowerJob工作目录 |
刚开始启动时,powerjob-worker-samples会启动失败,等powerjob-server启动成功后,powerjob-worker-samples才会启动成功。这大概需要几分钟。
运行成功后,浏览器访问 http://127.0.0.1:7700/
应用名称:powerjob-worker-samples
密码:powerjob123
到这里是官方文档给出的步骤
如果只需要单独启动一个powerjob-server服务,其他服务不用启动,那么则需要去修改docker-compose文件
将其他服务注释掉,只保留powerjob-server服务
1 | # 使用说明 V4.3.1 |
紧接着需要去修改powerjob-server中starter的配置文件,完整目录为PowerJob/powerjob-server/powerjob-server-starter/src/main/resources

从这张图可以看出当前使用的是application-daily的配置文件,所以去修改这个配置文件中与数据库相关的配置即可
准备工作做完后使用docker-compose up启动(docker-compose up -d后台启动)
这里已经成功部署起来了

浏览器7700端口也可以访问了

遇到的问题
我自己其实在配置过程只用了很少时间,大部分问题主要是因为我部署后总是连接不到数据库,因为我的MySQL数据库也是采用docker容器来部署的,再排查过username和password后仍然不行,这时我想到会不会是因为不在同一个网段呢?
于是我使用
1 | docker network ls //查看所有网络 |
发现除了bridge、host、null以外还有一个powerjob-default网络,这时我才意识到我连接不上的原因,在docker容器内,不同容器之间互相通信需要在同一个网段内,于是我在docker-compose配置文件中指定了加入到docker的默认bridge网络中

启动检查网络
1 | //查看bridge下的所有容器 |

这样powerjob-server和mysql在同一个网段下就可以进行通信了