🍁博主简介
🏅云计算领域优质创作者
🏅华为云开发者社区专家博主
🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!
一、Jenkins到底是什么?
Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。下面为项目持续集成和交互的流程图
二、持续集成、自动部署流程
开发人员将代码push到gitlab中,触发jenkins的自动pull拉取代码,通过maven编译、打包,然后通过执行shell脚本使docker构建镜像并push到私服(或者阿里云)仓库,此操作完成后jenkins服务器上再执行SSH命令登录到部署服务器,docker从仓库(私服)拉取镜像,启动容器。整个操作流程完成。
三、使用docker部署Jenkins
1 安装docker服务并添加docker的镜像加速源
首先安装docker,并且添加docker的镜像加速源;添加docker的镜像源可以加速拉取镜像;
docker安装的方式可参考:linux(centos)中部署docker(步骤超全,含带一些发展史和一些概念)
更换docker的镜像源:
#切换到/etc/docker/
cd /etc/docker/
#创建daemon.json文件
touch daemon.json
#或者直接vim daemon.json
vim daemon.json
{
"registry-mirrors":[
"https://fdsfa43fg.mirror.aliyuncs.com"
]
}
#写入完成之后保存退出重新加载配置并重启docker服务
#保存退出
:wq
#重新加载配置
systemctl daemon-reload
#重启docker服务
systemctl restart docker
重启完可用docker info命令查看是否添加上
docker info
2 拉取Jenkins镜像
docker pull jenkins/jenkins
等待拉取即可;
拉取完成之后查看镜像
[root@localhost docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
jenkins/jenkins latest 55860ee0cd73 10 months ago 442MB
3 创建Jenkins挂载目录并赋予权限
3.1 稍后可以将docker内的目录挂载到此目录上,方便操作容器内文件夹而不需要进入容器
mkdir -p /var/jenkins_home
3.2 为挂载目录赋予权限
chmod 777 /var/jenkins_home
4 创建Jenkins容器并运行
docker run -itd --name jenkins --restart=always --network=host --privileged=true -v /var/jenkins_home/:/var/jenkins_home/ -v /etc/localtime:/etc/localtime jenkins/jenkins:latest
创建并启动一个名为Jenkins的docker容器:
-it是以交互式创建,-d是后台执行;
–name是让其自定义一个名字jenkins(自定义);
–restart是设置开机自动重启 always开机自动重启;
–network是网络模式 host是主机模式;
–privileged是加上这个参数容器内就会拥有和容器外一样的root权限了;
-v是将容器中的/var/jenkins_home挂载到本机的/var/jenkins_home目录,前者为本机地址,后者为容器地址 ;
最后jenkins/jenkins则是本次运行使用的镜像;
5 页面访问jenkins
docker ps -a
jenkins运行中页面访问
ip:port
如:遇到页面访问不到的情况,可使用netstat -anput | grep port
查看端口是否被占用;
5.1 解锁 Jenkins
根据提示找到jenkins的密码;
[root@localhost secrets]# cat /var/jenkins_home/secrets/initialAdminPassword
82112870c37694a46ab4f732dafsfa0019334ef0
将密码复制到页面上,点击继续;
5.2 自定义Jenkins—安装推荐插件
可选择使用推荐插件
或自定义插件
;推荐使用推荐插件
。
5.2.1 配置镜像加速器
插件安装失败或速度过慢,可通过配置镜像加速解决。
#停止jenkins容器
docker stop jenkins
#进入jenkins挂载的文件中
cd /var/jenkins_home/
#编辑配置文件
vim hudson.model.UpdateCenter.xml
#将url值修改为清华大学官方镜像地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
#保存退出重启容器
:wq
docker restart jenkins
5.3 创建管理用户
5.4 实例配置
直接保存并完成即可
5.5 开始使用
四、Jenkins安装Github所需插件
需要安装几个必须的插件:CloudBees Credentials
、GitHub API Plugin
、SSH Credentials Plugin
、Git client plugin
、SCM API
、Mailer Plugin
、Plain Credentials Plugin
、GIT plugin
、GitHub Plugin
、Publish Over.SSH
、Maven Integration
五【附加】 github生成Token步骤
1 访问github并登录
github官网:https://github.com/
登录:
2 配置Personal Access Token
在对项目有写权限的用户上获取token进入github –> setting –> Developer settings –> Personal Access Token –> Token –> Generate new token
找到tokens,新建tokens并设置读、写、执行权限
转载:https://blog.csdn.net/liu_chen_yang/article/details/127883522