Docker 安装 Jenkins 并解决初始安装插件失败问题
安装 Jenkins 后,初始化下载插件总是失败,导致安装不成功,重试好几次都是卡在安装插件那。
这里记录下 Docker 下怎么安装 Jenkins ,并解决初始安装插件失败问题。
安装插件失败,其实是拉取了官方的 Jenkins 镜像,然后在初始化安装插件时,会从国外的网站去获取,导致安装非常缓慢,或者安装失败。最好的解决方案时拉取 Jenkins 中文社区 提供的 Jenkins 镜像,即可解决。Jenkins 中文官网 :https://www.jenkins.io/zh/
安装步骤获取镜像
docker pull jenkinszh/jenkins-zh:latest
Docker官方镜像仓库 :https://hub.docker.com/
从这里找到jenkins 中文镜像
设置 jenkins 容器挂载目录
Jenkins 容器启动后,会产生安装配置文件,需要把这些文件的生成地址改为,linux服务器上的目录。
目的:日后修改配置容易寻找。
创建Jenkins 生成目录 mkdir /home/jenkins_home
目录授权 chmod 777/home/jenkins_home 不授权启动后无法生成文件
启动命令
docker run -d -p 8085:8080 -p 50000:50000 --name myjenkins -v /home/jenkins_home/:/var/jenkins_home jenkinszh/jenkins-zh:latest
命令解释:
run 运行容器
-d 后台运行
-p linux服务器端口 与 Docker 容器端口映射
--name 自定义容器别名
-v linux服务器目录 与Docker 容器目录挂载
最后名跟的时 拉取的镜像名和版本
注意:8085 是访问端口,只要没占用的都可以用。8080不可更改
-p 50000:50000 不可更改。
/home/jenkins_home/ 本地的生成目录,可以自定义,与上一步创建并授权的目录一致即可
/var/jenkins_homeDocker 容器目录,不可更改。
访问
服务器ip + 自定义端口 例: 192.168.0.200:8085
初始密码
docker ps 获取当前运行容器的id
docker logs容器的id
在 logs 日志里面即可看到,类似这样
插件安装
用中文社区提供的 Jenkins 镜像 无需设置,直接安装即可,速度飞快。
附-官方镜像安装插件失败分析
以上面 Jenkins 挂载的目录为例
在 jenkins_home 的目录下,hudson.model.UpdateCenter.xml 这个文件定义了 插件拉取的配置地址,默认的地址可以直接访问,你会发现,他连接的是 https://www.google.com/, 由于墙的原因,这个地址一直访问失败。
在/jenkins_home/updates 目录下的default.json 文件内容,就是hudson.model.UpdateCenter.xml 定义的插件拉取的配置地址 里面的内容。即使你通过其他博客 修改了 default.json 的文件内容,当你再次 启动的时候,会立马还原过来,所以怎么修改都还不会生效。
而 Jenkins 中文社区提供的镜像,这块已经处理好了,插件拉取的配置地址 已经换为国内镜像地址,所以插件下载非常快。
Jenkins 中文社区 关于插件拉取的解释:
https://community.jenkins-zh.cn/t/jenkins/26
https://jenkins-zh.cn/wechat/articles/2019/11/2019-11-11-update-center-mirror-announcement/
建议了解一下
下一篇:Linux系统centos7.X安装tomcat8的图文教程