本文演示如何在CentOS7上安装jenkins。

1 准备工作

1.1 选择安装节点

因为在DevOps实践环境搭建规划中,Jenkins的任务需要执行docker swarm的相关命令,简单起见,把jenkins安装在swarm的manager节点上

$ ssh 192.168.1.101

1.2 安装jdk

openjdk安装明细,请参考这里

1.3 安装maven

maven安装明细,请参考这里

1.4 安装docker

docker安装明细,请参考这里

1.5 安装git

git安装明细,请参考这里

1.6 下载所需的yum源配置文件

$ wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

1.7 导入密钥

$ rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

2 安装Jenkins

通过yum安装:

$ yum -y install jenkins

3 启动Jenkins

3.1 Jenkins主要目录和文件说明

目录/文件名 说明
/usr/lib/jenkins/ 安装目录,war包所在地。
/etc/sysconfig/jenkins 配置文件
/var/lib/jenkins/ 主目录,工作目录(workspace)也在这里
/var/log/jenkins/jenkins.log 日志文件

3.2 修改Jenkins默认端口

因为8080端口通常会是微服务网关的端口,这里讲Jenkins端口改成8088:

$ vi /etc/sysconfig/jenkins
# 把默认端口8080改成8088
JENKINS_PORT="8088"

3.3 防火墙设置

192.168.1.101上开启了防火墙,需要把http协议和8088端口都开放:

$ firewall-cmd --zone=public --add-port=8088/tcp --permanent
$ firewall-cmd --zone=public --add-service=http --permanent
$ firewall-cmd --reload

3.4 启动jenkins并设置开机启动

$ service jenkins start
$ chkconfig jenkins on

注意:

如果启动失败,检查jenkins是否配置jdk。

如果没有配置,打开/etc/rc.d/init.d/jenkins文件,在candidates的最后面加上正确的java命令文件的路径:

$ vi /etc/rc.d/init.d/jenkins
# 添加java的路径
candidates="
***
***
/usr/bin/java
/usr/local/java/jdk-<version>/bin/java # 加入java命令文件所在路径
"

4 配置Jenkins

4.1 启动成功后,通过浏览器访问:

http://192.168.1.101:8088

4.2 获取安装密码

页面上会要求在执行安装前输入安装密码:

根据页面提示,在指定路径下获得安装密码:

$ cat /var/lib/jenkins/secrets/initialAdminPassword

复制密码,粘贴到页面输入框,点击继续

4.3 选择插件

默认选择安装推荐的插件

安装插件可能需要几分钟的时间。

4.4 创建用户

创建一个新的用户,也可以选择使用admin账户继续

4.5 安装完成

点击开始使用Jenkins,完成安装:

4.6 登录

安装完成后,会自动跳转到登录页面:

登录成功后,就可以开始创建任务了:

最新文章

  1. Memcache笔记03-php操作Memcached
  2. 【Convert Sorted Array to Binary Search Tree】cpp
  3. Tomcat从零开始(十一)WebappLoader概述
  4. windows 服务器系统日志分析及安全
  5. java error:编码gbk的不可映射字符
  6. JS数字转中文
  7. flask刷新token
  8. 请求不同域的数据方法:requests Jsonp cors
  9. FreeRTOS不允许在中断服务程序和临界段中执行不确定的性的操作
  10. windows下vscode修复c++找不到头文件
  11. [Unity插件]Lua行为树(一):BehaviorDesigner源码分析
  12. linux ping命令
  13. SVG.js 文本绘制整理
  14. UVa 12034 Race (递推+组合数学)
  15. spring中的@component
  16. 【转】TCP拥塞控制,慢启动、拥塞避免、快重传以及快恢复
  17. CSS学习笔记(2)--html中checkbox和radio
  18. CF 304B——Calendar——————【年月日计算】
  19. gh-ost使用手册
  20. Django基础(四)

热门文章

  1. 动车上的书摘-java对象流与序列化
  2. Spring cloud的Maven插件(一):repackage目标
  3. 数据读取(SQL)与文本写入(fileStream)
  4. HBase 在人工智能场景的使用
  5. 精读JavaScript模式(八),JS类式继承
  6. Android AIDL 实例
  7. Python多进程操作同一个文件,文件锁问题
  8. 【Go】优雅的读取http请求或响应的数据
  9. Perl检查引用类型
  10. Linux中安装Oracle11g后出现监听的问题及解决办法