Docker安装jenkins实现微服务多模块打包的示例代码

废话不多说,直接讲正事

1.安装

# 1.pull jenkins(若使用jdk11则可pull最新版jenkins,否则最新版配置jdk8时会有兼容bug)
docker pull jenkins/jenkins:alpine-jdk8

# 2.run jenkins
docker run -d --name jenkins jenkins/jenkins:alpine-jdk8

# 3.拷贝jenkins_home到宿主机
docker cp jenkins:/var/jenkins_home /data/

# 4.删除刚刚启动的jenkins
docker stop jenkins && docker rm jenkins

# 5.重新启动一个映射拷贝出来的home
docker run -d --restart=unless-stopped --name jenkins -u root \
-v $(which docker):/usr/bin/docker \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /data/esp/:/data/esp/ \
-v /data/jenkins_home:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
-p 9090:8080 -p 50000:50000 jenkins/jenkins:alpine-jdk8
# -uroot:已jenkins中root用户启动
# -p:映射容器中8080、50000端口到宿主机的9090、50000端口
# -v:映射项目部署目录及jenkins工作目录到容器中
# -v /etc/localtime:/etc/localtime:同步容器与宿主机的时间


docker logs -f jenkins

*************************************************************
*************************************************************
*************************************************************

Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

------------此处应有密码------------

This may also be found at: /var/jenkins_home/secrets/initialAdminPassword

*************************************************************
*************************************************************
*************************************************************

2.初始化

访问:http://ip:9090

出现下图表示正在启动中,稍等片刻即可

Docker安装jenkins实现微服务多模块打包的示例代码_第1张图片

密码上文:------------此处应有密码------------

Docker安装jenkins实现微服务多模块打包的示例代码_第2张图片

Docker安装jenkins实现微服务多模块打包的示例代码_第3张图片

Docker安装jenkins实现微服务多模块打包的示例代码_第4张图片

Docker安装jenkins实现微服务多模块打包的示例代码_第5张图片

3.配置jenkins

3.1 安装Maven

Manage Jenkins -> Global Tool Configuration -> Maven

Docker安装jenkins实现微服务多模块打包的示例代码_第6张图片

3.2 配置Maven插件

Manage Jenkins -> Manage Plugins -> filter搜索:Maven Integration

Docker安装jenkins实现微服务多模块打包的示例代码_第7张图片

Docker安装jenkins实现微服务多模块打包的示例代码_第8张图片

3.3 安装svn插件

Docker安装jenkins实现微服务多模块打包的示例代码_第9张图片

Docker安装jenkins实现微服务多模块打包的示例代码_第10张图片

4. 创建自动化部署任务

工作台->新建任务

Docker安装jenkins实现微服务多模块打包的示例代码_第11张图片

4.1 配置清理旧的构建

不清理的话可能jar包会越来越多撑满磁盘

Docker安装jenkins实现微服务多模块打包的示例代码_第12张图片

4.2 创建svn账密凭证

id/用户名:svn账号
密码:svn密码
描述:凭证名称(可不填)
其余可不填,点击添加即可

Docker安装jenkins实现微服务多模块打包的示例代码_第13张图片

Docker安装jenkins实现微服务多模块打包的示例代码_第14张图片

4.3 填写build命令

Docker安装jenkins实现微服务多模块打包的示例代码_第15张图片

clean package或clean install

4.4 首次构建

Docker安装jenkins实现微服务多模块打包的示例代码_第16张图片

下图表示正在拉取svn项目,耐心等待即可

Docker安装jenkins实现微服务多模块打包的示例代码_第17张图片

至此为止,就可以符合大部分maven项目拉取、打包的功能了,剩下一些简单的sh脚本启动可自行百度,很简单。
下文偏俺公司个性化操作,执行sh文件来启动项目等,对他人意义不大,可以了解了解;或者把我执行sh文件的shell命令改成启动java程序即可

5. 配置maven运行命令及shell脚本

5.1 maven父子项目依赖指令配置

Docker安装jenkins实现微服务多模块打包的示例代码_第18张图片

5.2打包完成之后shell命令

Docker安装jenkins实现微服务多模块打包的示例代码_第19张图片

#!/bin/bash
project_name="manage"
dir_name="manage"
ps -ef | grep ${project_name}.jar | grep -v grep | awk '{print $2}' | xargs  kill -9
cd /home/espuser/.jenkins/workspace/package_script
mv ${project_name}.jar /data/esp/${dir_name}/
echo "start project"

cd /data/esp/${dir_name}/
BUILD_ID=dontKillMe nohup java -jar ${project_name}.jar --spring.profiles.active=prod \
| cronolog ./logs/${project_name}/catalina-%Y-%m-%d.out >> /dev/null 2>&1 &
echo "start success"

到这就全配置好了,保存后点击部署即可;查看控制台输出:↓

Docker安装jenkins实现微服务多模块打包的示例代码_第20张图片

 到此这篇关于Docker安装jenkins实现微服务多模块打包的示例代码的文章就介绍到这了,更多相关Docker jenkins多模块打包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Docker安装jenkins实现微服务多模块打包的示例代码)