1.安装docker
此处docker的安装不做赘述
2.安装jenkins
使用docker的方式安装jenkins,部署时需要暴露使用的端口,如:50000端口是jenkins的监听端口,8080是jenkins运行的端口
部署命令:
docker run -d -p 8080:8080 -p 50000:50000 -p 8081:8081 -v /home/jenkins:/home/jenkins_home -v /etc/localtime:/etc/localtime -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai --name jenkins jenkins/jenkins:lts
-p:映射端口
-v:挂载目录
-e JAVA_OPTS=-Duser.timezone=Asia/Shanghai:设定时区
--name jenkins:设定名称
此处因为个人使用需要用到8081端口所以多暴露了一个端口
3.使用docker ps 命令查看正在运行中的容器
如果出现上图所示则表示Jenkins已部署成功,此时需要访问你宿主机的ip:8080访问jenkins
如果访问jenkins失败请确保防火墙是否已开启8080端口
#查看主机开放端口
firewall-cmd --list-ports
4.成功访问路径后出现下图界面
出现该界面后需要获取jenkins容器中的生成的token
进入命令行界面,运行命令
docker exec -it 容器id /bin/bash #普通权限进入到docker容器
docker exec -it -u root 容器id /bin/bash #使用root权限进入到docker容器
容器id使用docker ps 命令查看
进入容器后运行命令
cat /var/jenkins_home/secrets/initialAdminPassword
获取token,将token粘贴到刚才需要输入token的界面上,输入后出现下面界面
此处可以根据需要选择插件安装,也可以安装推荐插件,待安装完成后再进行其他插件的安装
安装完成后需要进行超级用户账号、密码、邮箱设置,如下图
点击保存并完成后安装成功,即可进入jenkins主界面。
5.配置JDK,Maven,Git
进入到本地工具配置界面
1.配置jdk环境
首先需要进入到jenkis容器中(上面有介绍如何进入容器),查看默认的jdk路径
进入容器后使用命令
echo $JAVA_HOME
即可打印出当前JDK的安装路径
将默认的jdk路径加入到jenkins的jdk环境中,此处不要勾选自动安装选项
JDK别名:可以随便输入
JAVA_HOME:jdk的安装路径
2.Git、Maven环境配置
git与maven的配置则比较简单,可以直接采用自动安装的方式进行配置,如果需要安装指定版本的git或者maven,只需要填写正确的安装路径即可
这里介绍自动安装方式
NAME :name可以随便输入
其他项保持默认即可
注意:
配置自动安装的项目时,配置后不会马上生效,而是在进行第一次构建时才会进行安装
3.Maven插件的安装
进入到插件页面,选择可选插件安装
找到 Maven Integration 插件,勾选后点击直接安装即可
当构建新项目时,出现可构建maven项目便证明插件安装成功
4.jenkins升级的问题
docker下jenkins升级只要需要替换容器中的jenkins.war文件并重启docker容器
1.进入docker容器,其中-u root是使用root权限登录
docker exec -u root -it 容器id /bin/bash
2.使用wget命令下载最新版本的jenkins.war文件
4.使用whereis jenkins命令查看jenkins的安装路径
5.使用cp命令将新的war包覆盖旧文件即可
6.浏览器访问ip:8080/restart 重启即可升级成功
备注:在进行容器部署时可以将容器的【/user/share/jenkins】目录挂载在宿主机上,以后升级只需替换jenkins.war文件即可。此种方式存在一个问题,在部署后由于宿主机的挂载文件夹为空,所以在部署后无法正常启动容器,放入jenkins.war与ref文件即可正常启动。
5.jenkins时区设置问题
1.进入系统管理->脚本命令行,执行下面命令设置为上海时间(该方式重启后失效)
System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')
2.在部署容器时添加参数,-e JAVA_OPTS=-Duser.timezone=Asia/Shanghai(一直有效)