Jpom-国产Jenkins
大约 1 分钟
Jpom-国产Jenkins
安装部署
mkdir -p /home/jpom-server/logs
mkdir -p /home/jpom-server/data
mkdir -p /home/jpom-server/conf
docker run -d -p 2122:2122 \
--name jpom-server \
-v /home/jpom-server/logs:/usr/local/jpom-server/logs \
-v /home/jpom-server/data:/usr/local/jpom-server/data \
-v /home/jpom-server/conf:/usr/local/jpom-server/conf \
jpomdocker/jpom
win
mkdir D:\Documents\test\jpom\logs D:\Documents\test\jpom\data D:\Documents\test\jpom\conf
docker run -d -p 2122:2122 --name jpom-server -v D:\Documents\test\jpom\logs:/usr/local/jpom-server/logs -v D:\Documents\test\jpom\data:/usr/local/jpom-server/data -v D:\Documents\test\jpom\conf:/usr/local/jpom-server/conf jpomdocker/jpom
配置
- 访问 http://localhost:2122
- 设置账号
- 配置 ssh 信息:配置 ssh 信息、便于构建后发布到对应服务器中
- 服务器IP
- ssh 端口
- 登录的账号信息(账号、密码)
- 文件目录:文件目录为给对应 ssh 授权部分目录可以在 Jpom 中使用,一般用于构建发布目录、ssh 文件管理
实践案例
本地构建 + SSH 发布 java 项目
配置构建信息
- 构建的项目(仓库)信息
- 项目的构建命令(依赖的构建环境:maven、vue、python、php)
- mvn clean package
- npm run build
- ......
- 构建产物的目录(项目中的相对路径)
- java 项目一般位于当前项目 target 目录下的某个文件
- vue 项目一般位于当前项目 dist 文件夹
- 发布目录:项目将发布服务器到哪个目录(需要已经配置到 ssh 文件目录中)
- 发布命令:执行发布后执行的命令,如:配置停止、启动项目
Java 项目发布命令示例
Tag="jpom-test-jar"
# 检查进程状态
pid=$(ps -ef | grep -v 'grep' | egrep $Tag| awk '{printf $2 " "}')
if [ "$pid" != "" ]; then
echo -n "boot ( pid $pid) is running"
echo
echo -n $"Shutting down boot: "
pid=$(ps -ef | grep -v 'grep' | egrep $Tag| awk '{printf $2 " "}')
if [ "$pid" != "" ]; then
echo "kill boot process"
# kill "$pid"
kill -9 "$pid"
fi
else
echo "boot is stopped"
fi
# 启动项目
nohup java -Dappliction=$Tag -jar /home/java/test/springboot-test-jar-0.0.1-SNAPSHOT.jar > /dev/null 2>&1 &
