【Linux】Docker 搭建 Jenkins
创始人
2024-03-26 02:37:59
0

🍁博主简介

  🏅云计算领域优质创作者
  🏅华为云开发者社区专家博主
  🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!

目录

  • 一、Jenkins到底是什么?
  • 二、持续集成、自动部署流程
  • 三、使用docker部署Jenkins
    • 1 安装docker服务并添加docker的镜像加速源
    • 2 拉取Jenkins镜像
    • 3 创建Jenkins挂载目录并赋予权限
    • 4 创建Jenkins容器并运行
    • 5 页面访问jenkins
      • 5.1 解锁 Jenkins
      • 5.2 自定义Jenkins---安装推荐插件
        • 5.2.1 配置镜像加速器
      • 5.3 创建管理用户
      • 5.4 实例配置
      • 5.5 开始使用
  • 四、Jenkins安装Github所需插件
  • 五【附加】 github生成Token步骤
    • 1 访问github并登录
    • 2 配置Personal Access Token

一、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 imagesREPOSITORY          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 CredentialsGitHub API PluginSSH Credentials PluginGit client pluginSCM APIMailer PluginPlain Credentials PluginGIT pluginGitHub PluginPublish Over.SSHMaven 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并设置读、写、执行权限

在这里插入图片描述在这里插入图片描述在这里插入图片描述

相关内容

热门资讯

常用商务英语口语   商务英语是以适应职场生活的语言要求为目的,内容涉及到商务活动的方方面面。下面是小编收集的常用商务...
六年级上册英语第一单元练习题   一、根据要求写单词。  1.dry(反义词)__________________  2.writ...
复活节英文怎么说 复活节英文怎么说?复活节的英语翻译是什么?复活节:Easter;"Easter,anniversar...
2008年北京奥运会主题曲 2008年北京奥运会(第29届夏季奥林匹克运动会),2008年8月8日到2008年8月24日在中华人...
英语道歉信 英语道歉信15篇  在日常生活中,道歉信的使用频率越来越高,通过道歉信,我们可以更好地解释事情发生的...
六年级英语专题训练(连词成句... 六年级英语专题训练(连词成句30题)  1. have,playhouse,many,I,toy,i...
上班迟到情况说明英语   每个人都或多或少的迟到过那么几次,因为各种原因,可能生病,可能因为交通堵车,可能是因为天气冷,有...
小学英语教学论文 小学英语教学论文范文  引导语:英语教育一直都是每个家长所器重的,那么有关小学英语教学论文要怎么写呢...
英语口语学习必看的方法技巧 英语口语学习必看的方法技巧如何才能说流利的英语? 说外语时,我们主要应做到四件事:理解、回答、提问、...
四级英语作文选:Birth ... 四级英语作文范文选:Birth controlSince the Chinese Governmen...
金融专业英语面试自我介绍 金融专业英语面试自我介绍3篇  金融专业的学生面试时,面试官要求用英语做自我介绍该怎么说。下面是小编...
我的李老师走了四年级英语日记... 我的李老师走了四年级英语日记带翻译  我上了五个学期的小学却换了六任老师,李老师是带我们班最长的语文...
小学三年级英语日记带翻译捡玉... 小学三年级英语日记带翻译捡玉米  今天,我和妈妈去外婆家,外婆家有刚剥的`玉米棒上带有玉米籽,好大的...
七年级英语优秀教学设计 七年级英语优秀教学设计  作为一位兢兢业业的人民教师,常常要写一份优秀的教学设计,教学设计是把教学原...
我的英语老师作文 我的英语老师作文(通用21篇)  在日常生活或是工作学习中,大家都有写作文的经历,对作文很是熟悉吧,...
英语老师教学经验总结 英语老师教学经验总结(通用19篇)  总结是指社会团体、企业单位和个人对某一阶段的学习、工作或其完成...
初一英语暑假作业答案 初一英语暑假作业答案  英语练习一(基础训练)第一题1.D2.H3.E4.F5.I6.A7.J8.C...
大学生的英语演讲稿 大学生的英语演讲稿范文(精选10篇)  使用正确的写作思路书写演讲稿会更加事半功倍。在现实社会中,越...
VOA美国之音英语学习网址 VOA美国之音英语学习推荐网址 美国之音网站已经成为语言学习最重要的资源站点,在互联网上还有若干网站...
商务英语期末试卷 Part I Term Translation (20%)Section A: Translate ...