Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。

  • 开源的java语言开发持续集成工具,支持CI,CD;
  • 易于安装部署配置:可通过yum安装,或下载war包以及通过docker容器等快速实现安装部署,可方便web界面配置管理;
  • 消息通知及测试报告:集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告;
  • 分布式构建:支持Jenkins能够让多台计算机一起构建/测试;
  • 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等;
  • 丰富的插件支持:支持扩展插件,你可以开发适合自己团队使用的工具,如git,svn,maven,docker等。


目录

  • Java JDK 环境安装
  • Jenkins环境安装
  • 配置 Jenkins 平台
  • 登录Jenkins平台
  • Jenkins插件安装
  • 创建用户
  • 修改用户密码
  • 设置平台语言


Java JDK 环境安装

因为 Jenkins 是基于Java语言进行开发的一个自动平台,所以 java 环境是必须要有的(在这边也可以先跳过,选择下述 Jenkins 安装时会提及到的 openjdk 安装)

  • 离线安装 Java jdk 教程 注意,通过自己安装的 java JDK,那么在安装好的Jenkins之后,需要重新配置/etc/rc.d/init.d/jenkins文件,具体配置内容,请看 Jenkins平台配置 java 环境

Jenkins环境安装

  1. 获取Jenkins安装源文件(如果没有wget,请参考安装.)
    cmd指令:wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
[root@localhost ~]# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
--2020-10-21 12:02:03--  https://pkg.jenkins.io/redhat-stable/jenkins.repo
正在解析主机 pkg.jenkins.io (pkg.jenkins.io)... 151.101.230.133, 2a04:4e42:36::645
正在连接 pkg.jenkins.io (pkg.jenkins.io)|151.101.230.133|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:85
正在保存至: “/etc/yum.repos.d/jenkins.repo”

100%[======================================================================================================================================================================================>] 85          --.-K/s 用时 0s      

2020-10-21 12:02:07 (2.02 MB/s) - 已保存 “/etc/yum.repos.d/jenkins.repo” [85/85])

[root@localhost ~]#
  1. 导入公钥
    cmd指令:rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
[root@localhost ~]# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
[root@localhost ~]#
  1. 升级内容
    cmd指令:yum upgrade(只升级所有包,不升级软件和系统内核)
    Log:Jenkins环境安装时yum upgrade日志.
  2. 安装 Java JDK (已有 java 环境可跳过)

jenkins基于java开发

  • Jenkins 官方安装 openjdk 教程(如果已通过其他方式安装过看java jdk,则可跳过此步骤,如上面提到的 离线安装 Java jdk 教程 cmd指令:yum install java-1.8.0-openjdk-devel查看更多完整日志信息.
    到这一步时,可以验证下该 Java JDK 是否安装成功
[root@localhost ~]# java -version
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
[root@localhost ~]#
  1. 安装 Jenkins
    cmd指令:yum install jenkins
  2. 重新加载某个服务的配置文件,如果新安装了一个服务,归属于 systemctl 管理,要是新服务的服务程序配置文件生效,需重新加载。
    cmd指令:systemctl daemon-reload
  3. 启动Jenkins
    cmd指令:systemctl start jenkins
  4. 查看 Jenkins 进程
    cmd指令: ps -ef | grep jenkins
  5. jenkins是否正常启动
    cmd指令:systemctl status jenkins
[root@localhost ~]# systemctl status jenkins
● jenkins.service - LSB: Jenkins Automation Server
   Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
   Active: active (running) since 四 2020-10-29 22:42:46 CST; 3s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 7750 ExecStop=/etc/rc.d/init.d/jenkins stop (code=exited, status=0/SUCCESS)
  Process: 7982 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/jenkins.service
           └─8008 /usr/local/java/jdk1.8.0_191/bin/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webr...

10月 29 22:42:46 localhost.localdomain systemd[1]: Starting LSB: Jenkins Automation Server...
10月 29 22:42:46 localhost.localdomain runuser[7987]: pam_unix(runuser:session): session opened for user jenkins by (uid=0)
10月 29 22:42:46 localhost.localdomain runuser[7987]: pam_unix(runuser:session): session closed for user jenkins
10月 29 22:42:46 localhost.localdomain jenkins[7982]: Starting Jenkins [  确定  ]
10月 29 22:42:46 localhost.localdomain systemd[1]: Started LSB: Jenkins Automation Server.
[root@localhost ~]#

配置 Jenkins 平台

登录Jenkins平台

http://192.168.98.32:8080 出现如下登录页

jenkins一般是运维还是后台 jenkins平台_docker


PS:这边也提供一份网上找到的中文版登录页进行参考

jenkins一般是运维还是后台 jenkins平台_jenkins_02


该管理员密码是来自登录窗口中提供的路径文件中

[root@localhost ~]# vi /var/lib/jenkins/secrets/initialAdminPassword

比如我个人的密码是d6924358dcb94fcb9149938fb4cc15ed

jenkins一般是运维还是后台 jenkins平台_docker_03

Jenkins插件安装

这边推荐选择 安装推荐的插件

jenkins一般是运维还是后台 jenkins平台_docker_04


进入插件安装过程

jenkins一般是运维还是后台 jenkins平台_jenkins_05

安全的重启jenkins 插件:safe restart

创建用户

(我这边直接使用admin账户)

jenkins一般是运维还是后台 jenkins平台_Jenkins_06


jenkins一般是运维还是后台 jenkins平台_jenkins_07


jenkins一般是运维还是后台 jenkins平台_jenkins_08


这样一来就已经到了Jenkins平台的首页了,因为我们使用的是admin的账号,过程中并没有设置过密码(默认密码是:d6924358dcb94fcb9149938fb4cc15ed),所以我们从用户中心重新设置一下密码

修改用户密码

jenkins一般是运维还是后台 jenkins平台_jenkins一般是运维还是后台_09


jenkins一般是运维还是后台 jenkins平台_Jenkins_10

设置平台语言

Manage Jenkins -> System Configuration -> Configure System -> Locale -> Default Language

jenkins一般是运维还是后台 jenkins平台_Jenkins_11


jenkins一般是运维还是后台 jenkins平台_jenkins一般是运维还是后台_12


保存之后页面就会刷新成如下截图

jenkins一般是运维还是后台 jenkins平台_jenkins一般是运维还是后台_13

  • 修改 jenkins 执行脚本时权限
    yum 安装的 Jenkins 配置文件默认位置 /etc/sysconfig/jenkins 默认 jenkins 服务以 jenkins 用户运行,这时在jenkins执行ant脚本时可能会发生没有权限删除目录,覆盖文件等情况。可以让 jenkins 以 root 用户运行来解决这个问题。
  1. 将jenkins账号分别加入到root组中
    gpasswd -a jenkins root
  2. 修改/etc/sysconfig/jenkins文件中,
    #user id to be invoked as (otherwise will run as root; not wise!)
    JENKINS_USER=rootJENKINS_GROUP=root (这个配置可以不加)
    可以修改为 root 权限运行,并执行重启 systemctl restart jenkins

重启后,进入Manage Jenkins -> Status Information -> System Information-> 系统属性->中,user.name 的值 变成了 root

jenkins一般是运维还是后台 jenkins平台_docker_14

  • 安装 Git
    CentOS7安装最新版git教程.