Docker 安装 Jenkins

Jenkins 是一款开源 CI & CD 软件,用于自动化各种任务,包括构建、测试和部署软件。

在项目开发场景中主要用于自动发版,解放了运维人员繁琐的工作,也便于进行版本管理。

Jenkins 可以直接运行 war 包安装,也可以使用 Docker 安装。

war 包安装过程简单,配置也相对于 Docker 安装简单,但占用资源更多,且不好管理,还是推荐使用 Docker 安装。

运行镜像

  1. 拉取镜像
bash 复制代码
docker pull jenkins/jenkins
  1. 运行镜像
bash 复制代码
docker run --name=jenkins \
           --restart=always \
           --privileged=true \
           -u root \
           -p 8080:8080 \
           -p 50000:50000 \
           -v /home/docker/jenkins/jenkins_home:/var/jenkins_home \
           -v $(which docker):/usr/bin/docker \
           -v /var/run/docker.sock:/var/run/docker.sock \
           -e TZ=Asia/Shanghai \
           -d \
           jenkins/jenkins
  1. 确认运行
bash 复制代码
docker ps

【STATUS】显示【UP】即为正常运行。

如果觉得不保险可以再查看日志确认:

bash 复制代码
docker logs -fn 200 jenkins

日志出现这一行代表运行成功。

访问系统

访问地址:++服务器IP:8080++

这里提示要输入密码,在服务器运行以下命令可以快速得到密码:

bash 复制代码
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

将得到的密码填入即可登录系统。

安装插件

新手推荐直接安装推荐的插件,老手再自行选择。

点击安装推荐插件可能出现如下报错:

这是因为缺少 <font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">cloudbees-folder</font> 插件,下载即可:cloudbees-folder下载地址

点一个版本下载即可(为了避免兼容性问题,最好选最新版)

下载后得到 <font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">cloudbees-folder.hpi</font> 文件

接下来只需将它拷贝到 Jenkins 的插件目录中即可,插件目录的位置在启动 Jenkins 容器时所挂载的宿主机目录 <font style="color:rgb(77, 77, 77);">/war/WEB-INF/detached-</font><font style="color:rgb(78, 161, 219) !important;">plugins</font>

这里为:<font style="color:rgb(77, 77, 77);">/home/docker/jenkins/jenkins_home/war/WEB-INF/detached-plugins/</font>

然后重启容器:

bash 复制代码
docker restart jenkins

然后再刷新页面按照之前的步骤获取密码登录后安装推荐的插件即会出现如下安装页面:

由于网络等原因,有可能出现部分插件安装失败的情况:

点击【重试】再次安装即可。

创建管理员用户:

这样,Jenkins 就安装完毕了。

相关推荐
冷yan~2 小时前
Spring AI与智能代理模式的深度解析
java·spring·ai·ai编程
步行cgn2 小时前
SqlSessionFactory 的作用
java·开发语言
代码匠心3 小时前
从零开始学Flink:实时流处理实战
java·大数据·后端·flink
爱隐身的官人3 小时前
JAVA代码审计总结
java·网络·安全
waves浪游3 小时前
Linux基本指令(中)
linux·运维·python
小杨勇敢飞3 小时前
拼图小游戏开发日记 | Day3(已完结)
java·数据结构·算法
她说..3 小时前
Redis项目应用总结(苍穹外卖/黑马头条/乐尚代驾)
java·数据库·redis·缓存·消息队列·redisson·geo
摇滚侠3 小时前
Java进阶教程,全面剖析Java多线程编程,多线程和堆内存栈内存的关系,笔记20
java
小猪绝不放弃.3 小时前
一张图入门 Docker
java·开发语言