本文图文讲解在Docker中安装Jenkins并介绍如何更新Jenkins版本还附上Jenkins配置ssl。
Jenkins安装最大的问题就是老遇到各种网络问题而无法安装插件,虽然可以改URL来安装Jenkins但会遇到各种问题而且镜像的内容可能不是最新的或者存在问题。为了更好的安装Jenkins我决定用云服务器(当然这得使用能访问外网的服务器)来讲解Docker中安装Jenkins,后面会把这个搭好环境的镜像分享给大家。
首先到docker hub上搜索一下Jenkins:
点第一个官方镜像进去看看:
发现只支持更新到2.60.3,之后的由jenkins/jenkins维护了,我们到看一下jenkins/jenkins的:
主要有LTS(Long Term Support)、latest和alpine三个版本,其中LTS是长期支持版相当于稳定版、latest是最新版每个星期更新一次、alpine是迷你版主要给构建镜像使用。
这里我们以latest版本来讲解,直接docker pull jenkins/jenkins并运行镜像:
运行后你会发现控制台打印了初始化管理员密码:
启动完到页面访问,并把控制台打印出来的初始化管理员密码填进去然后点继续:
接着点左边的“安装推荐的插件”
然后进入安装插件界面,这一步就经常会出各种问题:
在国内环境如果实在不行安装插件这一步可以跳过等安装成功后也可以再安装插件的,接着创建管理员账号,填写完记得点右边的“保存并完成”,不能点左边否则等下无法登录:
然后配置实例,这一步不改内容,可以随便点:
然后就到了就绪开始使用了:
上面点“开始使用Jenkins”即可进入首页:
然后回到后台,通过
docker cp jenkins:/var/jenkins_home .
docker cp jenkins:/usr/share/jenkins .
分别把jenkins_home(这个是插件安装、构建项目等的主目录)、jenkins(这个是放运行前端页面的war包,也就是更新新版本的目录)目录拷贝到宿主机,opt目录是用来做备用的目录可以不挂载,然后删除上面运行的容器,再重新运行挂载三个目录进去的容器,你会发现运行后报没权限,通过 sudo chown -R 1000 jenkins_home 给jenkins_home目录授权:
然后再访问页面,你会发现中文化更彻底了:
点右上角的名称简单设置一下账号信息:
拖到最下面把时区改成上海,你会发现找不到北京:
其他的像配置jdk、gradle、maven等,等到后面讲解自动化部署再来讲吧。
接下讲一下Jenkins的更新方法,因为latest版本是每个星期都会更新的,实在是太频繁了,不过更新很简单可以用工具下载新war包替换上面挂载目录usr_share_jenkins下的jenkins.war,也可以直接在那个目录执行wget http://mirrors.jenkins.io/war/latest/jenkins.war在线下载,然后重启即可以完成更新版本。
如果你不想折腾搭环境,可以用我搭好的Jenkins:2.230版本镜像:
链接: https://pan.baidu.com/s/19K3NTl0nxpCeOcc0c68EkQ 提取码: wftu
使用方法是先下载镜像然后把jenkins_home-2.230.zip解压作为jenkins_home目录挂载进去容器就可以直接使用搭好的环境。
首先下载镜像有两种方法,一种是直接从docker hub上拉下来:docker pull xubingtao/jenkins:2.230,这种方法有时候会下载不了:
另一种是直接下载jenkins-2.230.tar然后load进去,这种方法百度网盘没开通会员会很慢:
接着把jenkins_home-2.230.zip解压作为jenkins_home目录挂载进去容器,然后运行,同样会遇到目录权限问题,直接执行sudo chown -R 1000 jenkins_home 给jenkins_home目录授权即可:
启动完登录账号是xbt,密码是xubingtao。附上完整的运行命令:
docker run –name jenkins-2.230 \
–privileged=true \
-p 8080:8080 -p 50000:50000 \
-e TZ=Asia/Shanghai \
-v /opt/docker/jenkins/2.230/opt:/opt \
-v /opt/docker/jenkins/2.230/jenkins_home:/var/jenkins_home \
-v /opt/docker/jenkins/2.230/usr_share_jenkins:/usr/share/jenkins \
xubingtao/jenkins:2.230
对了,我服务器上还搭了个带ssl的Jenkins:https://jenkins.xubingtao.cn,申请证书后nginx主要配置如下:
最后祝你们成功。
展开阅读全文
上一篇: 如何让整个网站变黑白(灰色)?