TypechoJoeTheme

Jim Tse

【Jenkins】Mac下docker自动化构建部署

本文最后更新于2020年05月05日,已超过1598天没有更新。如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!

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!

赞(0)
版权属于:

Jim Tse

本文链接:

https://jimtse.eu.org:88/program/jenkins.html(转载时请注明本文出处及文章链接)

评论 (0)