docker的方式进行jenkins环境搭建

 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(一直有效)

posted @ 2019-06-17 18:37  運命の出会い  阅读(1923)  评论(0编辑  收藏  举报