TOC目录
打开TOC目录
Docker部署jenkins

- 创建jenkins目录
mkdir ~/develop/env/jenkins_home
- 修改目录的所有者,以便于 Jenkins 容器能够操作该目录
sudo chown -R tse:staff ~/develop/env/jenkins_home
- 创建容器并挂载
docker run -d --name jenkins -p 8080:8080 -p 50000:50000 -v /Users/tse/develop/env/jenkins_home:/var/jenkins_home jenkins/jenkins
- 访问localhost:8080,完成初始化,需从下面命令获取密码
cat ~/develop/env/jenkins_home/secrets/initialAdminPassword
- 安装插件 Jenkins 启动成功之后,接下来我们安装三个必要的插件:
| 名称 | 意义 |
|---|---|
Maven Integration | Maven 构建工具 |
Publish Over SSH | 整个工具,将来把 Jenkins 打包好的 jar 上传到应用服务器上。 |
Github | 协助使用 Github 仓库 |
- docker将宿主maven目录迁移到jenkins下
docker cp /Users/tse/develop/env/maven-3.9.1 jenkins:/opt/
配置环境
- 全局工具配置

- github配置access token

- 系统配置
- github服务器

- 凭据类型选择secret text并填入刚刚在github生成的access token

- Publish over SSH (写入远程服务器信息) Remote Directory填写目标服务器要进去传输文件的目录,流程是进入服务器——》cd到此目录——》使用sftp进行文件传输。

- 新建任务构建一个maven项目

- 勾选GitHub 项目配置填入项目URL

- 源码管理

- 构建环境

- Build

- Post Steps

- 这里 Source files选择项目下打包完成的文件,Remove prefix删除无需传输的文件夹,Remote directory填入远程目录,没有就会自动创建, Exec command执行也可以用shell脚本如下
sh /目录/deploy.sh
- 并创建
deploy.sh文件
export JAVA_HOME=/opt/java
export PATH=$JAVA_HOME/bin:$PATH
JAR_PATH=/root/data
JARFILE=*-0.0.1-SNAPSHOT.jar
ps -ef | grep $JARFILE | grep -v grep | awk '{print $2}' | xargs kill -9
java -jar $JAR_PATH/$JARFILE > out.log &
if [ $? = 0 ];then
sleep 30
tail -n 50 out.log
fi
- 接下来保存并点击立即构建

Enjoy IT!