04-DevOps-安装并初始化Jenkins

Jenkins由Java语言开发,用于监控持续重复的工作,包括:持续的软件版本发布/测试项目,监控外部调用执行的工作。

Jenkins主要起到一个驱动者,流水线的工作,下游代码拉取,上游生产环境发布、构建,这些工作由Jenkins进行驱动。

切换目录

cd /usr/local

安装wget

sudo yum install wget

下载jdk压缩包,并完成解压缩

wget --no-check-certificate https://manongbiji.oss-cn-beijing.aliyuncs.com/ittailkshow/devops/download/jdk-8u341-linux-x64.tar.gz

下载maven压缩包,并完成解压缩

wget --no-check-certificate https://manongbiji.oss-cn-beijing.aliyuncs.com/ittailkshow/devops/download/apache-maven-3.8.6-bin.tar.gz

解压缩jdk

tar zxvf jdk-8u341-linux-x64.tar.gz

解压缩maven

tar zxvf apache-maven-3.8.6-bin.tar.gz

完成后,会在local目录中新增两个目录jdk和maven

对以上两个目录进行重命名,方便后续操作

mv jdk1.8.0_341 jdk

mv apache-maven-3.8.6 maven

删除压缩包文件(用不到了)

rm -f jdk-8u341-linux-x64.tar.gz

rm -f apache-maven-3.8.6-bin.tar.gz

删除maven自带的settings.xml

cd /usr/local/maven/conf

rm -f settings.xml

拉取新的maven配置文件,这个配置文件更改了包的下载路径,改为阿里云的下载,速度更快。

wget --no-check-certificate https://manongbiji.oss-cn-beijing.aliyuncs.com/ittailkshow/devops/download/settings.xml

具体修改内容说明:

部署Jenkins容器

如果已经存在Jenkins相关内容,先将其删除。

rm -rf /var/jenkins/

docker rm -f jenkins

创建Jenkins需要的文件夹,并授权

mkdir -p /var/jenkins/

chmod -R 777 /var/jenkins/

直接执行容器运行的命令,可能会遇到下载镜像失败的情况,因为网络原因无法成功,可以使用国内的一个镜像仓库,地址:毫秒镜像

使用这个命令去毫秒镜像仓库中找到Jenkins镜像,然后下载到本地。

docker pull docker.1ms.run/jenkins/jenkins:2.442-jdk17

下载完成,使用docker images命令,找到下载的镜像,然后根据镜像ID运行这个镜像。

运行Jenkins容器

复制代码
docker run --name jenkins \--restart=always \--network macvlan1  --ip=192.168.1.241 \-v /var/jenkins/:/var/jenkins_home/ \-v /usr/local/jdk:/usr/local/jdk \-v /usr/local/maven:/usr/local/maven \-e JENKINS_UC=https://mirrors.cloud.tencent.com/jenkins/ \-e JENKINS_UC_DOWNLOAD=https://mirrors.cloud.tencent.com/jenkins/ \-d 镜像ID

macvlan1是《02DevOps基础环境准备》文章中设置的macvlan的名称,192.168.1.241是为Jenkins定义的ip地址。

-v代表了容器挂载的三个目录。

-e代表环境变量,定义插件访问时的地址,从腾讯云下载,提高速度。

通过docker ps命令就可以看到Jenkins已经成功运行

通过命令查看Jenkins启动日志:

docker logs -f jenkins

在日志中找到这个密码,复制上面的密码,在浏览器中数据192.168.1.241:8080(ip:8080)

到这一步Jenkins就安装完成了,但是插件安装的时候一直失败,未找到解决方法,原因大概是网络问题,更换了国内的地址,也没有解决。

相关推荐
RisunJan13 小时前
Linux命令-scriptreplay(终端会话回放)
linux·运维·chrome
x²+(y-√³x²)²=114 小时前
Linux打包文件到Windows,文件/文件类型丢失
linux·运维·windows
世人万千丶14 小时前
去重插入与超限淘汰:ArkTS 实现鸿蒙搜索历史的 LIMIT 艺术
运维·服务器·学习·华为·harmonyos·鸿蒙
未来之窗软件服务14 小时前
企业自动化运营-电子合同预览-东方仙盟
运维·自动化·仙盟创梦ide·东方仙盟
Android系统攻城狮15 小时前
Linux PipeWire深度解析之pw_properties_iterate调用流程与实战(六十五)
linux·运维·服务器·音频进阶·pipewire音频进阶
研华科技Advantech15 小时前
案例 | 从离线巡检到在线看护:研华PHM解决方案赋能石油钻井平台智能运维
运维·人工智能·边缘计算
難釋懷16 小时前
Nginx主动健康检查
运维·nginx
ITyunwei098716 小时前
内存溢出报错,实战处理记录
运维·服务器·企业微信
Elastic 中国社区官方博客16 小时前
你的 AI agent 不需要你的 API 密钥:使用 OAuth 2.1 对 Elasticsearch MCP 服务器进行身份验证
大数据·运维·人工智能·elasticsearch·搜索引擎·全文检索
FreeTinker16 小时前
AP AC组网中的远程运维挑战及内网穿透技术应用分析
运维