部署 Jenkins 服务器并安装 GitLab 插件、实现代码免秘钥代码 clone
1、部署 jenkins
安装依赖:
https://www.jenkins.io/zh/doc/book/installing/
CPU、内存、磁盘
安装 Java 8、在 2.361.1 及以上版本开始要求 Java 11
root@jenkins:~# apt install openjdk-11-jdk
jenkins 包下载地址https://mirrors.jenkins.io/
首先安装 jdk11
apt install -y openjdk-11-jdk
安装 jenkins
dpkg -i jenkins_2.361.2_all.deb && systemctl stop jenkins
修改配置文件
# vim /etc/default/jenkins
JENKINS_USER=root
JENKINS_GROUP=root
root@jenkins:~# vim /lib/systemd/system/jenkins.service
User=root
Group=root
JAVA_ARGS="-Djava.awt.headless=true -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true" #关闭跨站请求伪造保护(CSRF)保护
重新加载配置,重启服务
systemctl daemon-reload && systemctl restart jenkins.service
2、访问 jenkins
![](https://static001.geekbang.org/infoq/ab/ab64a8a2485b0a71ea3d33a94357a0ad.png)
查看随机生成的密码
点击安装推荐的插件
![](https://static001.geekbang.org/infoq/ba/ba7c9f13f535f25828a646ba195fd5bd.png)
![](https://static001.geekbang.org/infoq/00/0061247718ef5efbca913be94c1f6c9c.png)
在系统管理,插件管理中选择安装 gitlab 插件,我这里已经安装过了
![](https://static001.geekbang.org/infoq/28/289f74525cb2d946bc19f99186b416d0.png)
如果是自由风格的 job,安装了 gitlab 插件后可以在源码管理这里配置 gitlab 代码库地址
![](https://static001.geekbang.org/infoq/5e/5e4237a4e55e63e31272719e104ba256.png)
点击添加凭据
![](https://static001.geekbang.org/infoq/fb/fb6213fcfe660d024f3e3d5605340f8f.png)
选择 ssh 私钥类型,填写用户名
![](https://static001.geekbang.org/infoq/c3/c30b687e8d684ab8575d060fcbfe6046.png)
将 ssh 的私钥复制到 jenkins,ssh 密钥对用 ssh-keygen 生成即可,最后的框是添加一个描述
![](https://static001.geekbang.org/infoq/3b/3bb07187b1d3dfb0872fd4c6f2226a82.png)
将公钥放到 gitlab 用户中
![](https://static001.geekbang.org/infoq/98/981949a2c7401ced9cb578cd07660f49.png)
复制 ssh 公钥到 gitlab 保存后,jenkins 就可以实现免密 ssh 拉代码了
![](https://static001.geekbang.org/infoq/c5/c58bec92f495fdc30c234129c340494f.png)
在 jenkins 执行 job
![](https://static001.geekbang.org/infoq/72/721948251715446f15758c3bca4bdf21.png)
评论