Jenkins 安装配置
文章目录
介绍
Jenkins 是一款由 Java 编写的开源的持续集成工具。
更新
- 2020/10/11 增加移动 Jenkins Home 目录链接
- 2019/02/10 初次发布
系列文章
- GitLab 安装配置 - 狂飙 git.company.com
- Jira 安装配置 - 狂飙 jira.company.com
- Jenkins 安装配置 - 狂飙 ci.company.com
- Mattermost 安装配置 - 狂飙 mattermost.company.com
这一系列文章中的软件是在同一台机器上安装配置的,完整地记录了配置过程。解决了同时部署各种服务之间可能会产生的问题,最终将各种服务整合到一起。每个服务都配置使用域名访问,便于使用。
账号系统未使用 LDAP,因此 Jira 与 GitLab 账号是独立的,Jenkins 与 Mattermost 使用 GitLab 账号登录。
环境
- CentOS 7.6 1810
- jenkins 2.150.2
策略
Jenkins 维护稳定版与开发版两个版本,因为是在生产环境使用,因此需要使用稳定版本。
Jenkins 官方提供稳定版本的 CentOS 源,因此可以直接使用此源进行安装与升级。
- RedHat Repository for Jenkins
- Installing Jenkins on Red Hat distributions - Jenkins - Jenkins Wiki
- How to install and Configure Jenkins on CentOS 7 and RHEL 7
安装
Java 运行时
OpenJDK Runtime Environment
|
|
Jenkins
|
|
配置
端口
由于同一台机器上安装的 GitLab 中的 unicorn 使用了 8080 端口,因此需要修改端口为其他端口。
将 JENKINS_PORT
的值修改为 5000
|
|
注意:端口不要使用浏览器禁用的不安全端口,否则无法访问,如 6000
。Chrome 非安全端口限制 | javasgl
防火墙
|
|
启动
|
|
提示:使用 systemctl enable jenkins
会报以下警告:
|
|
注意:有时会出现 systemctl status jenkins
显示启动正常,tail -f /var/log/jenkins/jenkins.log
中显示没有启动的日志,可以使用 netstat -tupln | grep 5000
来确定 Jenkins 的确是启动了,如果显示没有对应端口的 java 程序,可以尝试手动 stop
后再 start
,而不是使用 restart
命令重启。
停止
|
|
登录
首次登录时需要输入密码:
|
|
插件
这里随意选择安装,建议选择安装推荐插件。
账号
设置管理员账号
Blue Ocean
Jenkins 内置新版本的皮肤与功能,可以方便地支持多个管线构建。 在插件管理中直接安装即可。
GitLab 登录
注意:将以下内容提到的 http://ci.company.com:5000
替换成实际的服务器地址与端口。
GitLab
在 GitLab 中创建 Application
,Scope
选择 api
,URL 填写 http://ci.company.com:5000/securityRealm/finishLogin
。
Jenkins
在 插件管理
中安装 Gitlab Authentication plugin
,然后前往 全局安全设置
中 Security Realm
选择 Gitlab Authentication plugin
,信息按如下填写:
- GitLab Web URI - http://git.company.com
- GitLab API URI - http://git.company.com
- Client ID - GitLab 中的 Application ID
- Client Secret - GitLab 中的 Secret
域名
Nginx 安装可以参考 GitLab 安装配置 - 狂飙 中的 同服务器共享 Nginx
一节。
vi /etc/nginx/conf.d/jenkins.conf
|
|
配置完成后可以直接省略端口,直接使用 http://ci.company.com
访问。
节点
配置节点
需要开启安全选项中的 TCP port for JNLP agents
功能才可以在 Agent 启动选项中增加 JLNP Agent。
注意:TCP port for JNLP agents
端口设置为固定的端口,可以任意选择如 5001
,但一定要是一个与默认服务端口不同的端口。
配置防火墙,允许上述配置的端口访问
|
|
运行时有以下提示时需要仔细检查目录路径是否正确。
|
|
配置完选项后就可以到节点管理中添加节点,Launch method
选择 通过Java Web启动代理
。
运行节点
根据上面配置完成新的 Agent 之后,页面会提示运行的命令,将其放在对应平台的 JenkinsAgent.sh
或 JenkinsAgent.bat
中运行即可。
配置自动启动,Windows 可以将 JenkinsAgent.bat
的快捷方式放到开始菜单中的 启动
目录中。
升级
在升级前保证没有任务正在执行。
|
|
空间不足
文章作者 狂飙
初次发布 2019-02-10 23:50:06 +0800
上次更新 2020-10-11 21:36:44 +0800