点击上方 “程序猿社”,选择“设为星标”
使用docker搭建jenkins环境,一键部署springboot应用
docker环境下jenkins环境的搭建
下载docker的镜像
docker pull jenkins/jenkins:lts
运行jenkins镜像
docker run -p 8081:8080 -p 50000:5000 --name jenkins-u root -v mydata/jenkins_home:/var/jenkins_home-d jenkins/jenkins:lts
注意:这里的端口映射需要注意,需要查看本机端口是否有已经被占用的端口,后面映射的docker端口好像必须是8080端口,笔者一开始映射的端口是8081:8081,发现启动之后报错,后来启动了好几次,没有报错发现,但是通过浏览器访问不到,通过查看日志,发现不管你映射的端口是什么,启动的时候都会在8080端口处启动
docker的配置
运行成功之后,访问jenkins,地址 http://113.51.156.205:8081/,第一次访问需要密码

查看jenkins密码
进入jenkins所在的docker容器,然后输入命令
cat var/jenkins_home/secrets/initialAdminPassword选择插件安装方式,这里直接安装推荐的插件

进入插件安装界面,联网等待插件安装

注意:如果插件下载比较慢的话,可以使用下面的方法:进入/mydata/jenkins_home/updates,也就是jenkins的工作目录,执行如下命令
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json &&sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json安装完成之后,创建管理员账号

进行实例配置,配置Jenkins的URL

image-20200812160858997 进行一些自定义插件的安装,点击jenkins系统管理,插件管理,在可选插件tab页面,输入要安装的插件,
例如:根据角色管理权限的插件:Role-based Authorization Strategy
远程使用ssh的插件:SSH plugin

进行全局工具设置,例如maven设置,jdk设置,git设置

image-20200812163901082

进入系统配置,配置ssh的配置,这样Jenkins使用ssh就可以执行远程的linux脚本了:

角色权限设置
我们可以使用Jenkins的角色管理插件来管理Jenkins的用户,比如我们可以给管理员赋予所有权限,运维人员赋予执行任务的相关权限,其他人员只赋予查看权限
第一步:点击全局安全配置,设置授权策略为role-basesd-strategr

第二步:点击系统管理下面的manage and assgin roles进行角色和权限的设计,用户权限设置



打包部署SpringBoot应用
源代码地址:https://gitee.com/zhaozuowen/springboot-jenkins-demo.git
有一点需要注意
,要将pom.xml中的dockerHost地址改成你自己的Docker镜像仓库地址:

将springboot-jenkins-demo.sh拷贝到/mydata/sh目录下
给.sh脚本添加可执行权限
chmod +x ./springboot-jenkins-demo.sh
jekins新建任务
新建一个任务

image-20200813094502444 配置源码仓库

image-20200813094815050 配置构建过程中执行maven打包镜像命令

image-20200813094911614

配置执行远程脚本shell的构建,用于在我们的镜像打包完成后执行docker容器

image-20200813095236592

最后执行任务的构建

image-20200813095514946 扫描下方的二维码进入我的微信小商店


文章转载自程序猿社,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。





