Docker系列 七. Docker 安装Jenkins

2020年10月30日 329点热度 0条评论

Docker系列 七. Docker 安装Jenkins

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能

1 查看可用的 Jenkins 版本

地址 : https://hub.docker.com/_/jenkins?tab=tags
在这里插入图片描述
在上面可以看到最后一个版本是两年前的一个版本(2.60.3),现在已经更新到2.249.1显然不是最新版本,那么我们需要进行升级。

2 取最新版的 jenkins 镜像

这里我们拉取官方的最新版本的镜像:

docker pull jenkins:latest
# 也可以使用 默认获取最新版本的镜像
docker pull jenkins 
[root@iZbp13dilgxismwsd349o7Z ~]# docker pull jenkins
Using default tag: latest
latest: Pulling from library/jenkins
55cbf04beb70: Pulling fs layer 
1607093a898c: Pulling fs layer 
55cbf04beb70: Downloading [==============================>                    ]  27.99MB/45.31MB
d4eee24d4dac: Downloading [==========>                                        ]  10.16MB/50.06MB
c58988e753d7: Download complete 
794a04897db9: Waiting 
70fcfa476f73: Waiting 
0539c80a02be: Waiting

3、查看本地镜像

使用以下命令来查看是否已安装了 jenkins:

docker images

4、运行容器

安装完成后,我们可以使用以下命令来运行 jenkins 容器:

docker run -d -p 9100:8080 -v /root/jenkins:/var/jenkins_home
--name jenkins --restart=always jenkins

将jenkins_home挂载到/root/jenkins下,需要对其设置权限。

sudo chown -R 1000 jenkins/

然后查看容器启动日志以及运行状态


# 查看容器日志

docker logs -f jenkins

# 查看容器运行

docker ps

进入容器(说是通过root才可以进行一些操作):

docker exec -it  -u root jenkins /bin/bash

升级方法

首先在宿主机上找到jenkins位置

[root@localhost config]# whereis jenkins
jenkins: /usr/local/jenkins

在/usr/local/jenkins目录中下载最新版本的jenkins

cd /usr/local/jenkins
wget http://mirrors.jenkins.io/war/latest/jenkins.war

进入容器,进行jenkins war包的替换,不放心的话,可以先备份下旧的jenkins.war

[root@iZbp13dilgxismwsd349o7Z ~]# docker exec -it  -u root jenkins /bin/bash
root@a28bb1e5cffe:/# whereis jenkins
jenkins: /usr/local/bin/jenkins.sh /usr/share/jenkins
root@a28bb1e5cffe:/# cd /usr/share/jenkins/
root@a28bb1e5cffe:/usr/share/jenkins# ls
jenkins.war  ref
root@a28bb1e5cffe:/usr/share/jenkins# mv jenkins.war jenkins.war.bak
root@a28bb1e5cffe:/usr/share/jenkins# ls
jenkins.war.bak  ref

我们就是要替换/usr/share/jenkins目录下的jenkins.war包,退到宿主机,执行docker cp命令

[root@localhost workspace]# docker cp /usr/local/jenkins/jenkins.war jenkins:/usr/share/jenkins/

重启docker容器

docker restart jenkins

image
后续项目打包部署可以参考 springboot 使用Jenkins实现自动化部署

harry

这个人很懒,什么都没留下

文章评论