场景
CentOS中Jenkins的下载、安装、配置与启动(图文教程):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116490738
在上面将jenkins安装配置好之后。
要在Jenkins使用凭证管理功能,需要安装Credentials Binding插件
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
在系统管理-插件管理-可选插件中搜索
Credentials Binding
然后点击Install without restart
在安装过程中会让你安装多个插件,确保每个插件都能安装成功才行。
这里是已经安装完成。
所以就不会在可选插件中搜索到,而是在已安装中搜索到。
这里六个插件都是安装上面那一个插件所带的。
安装成功之后就可以在Dashboard中找到Manage Credentials
点击全局
在全局凭证中点击添加一些凭证
这里可以选择凭证类型,可以添加的凭证类型为5种
Username with password :用户名和密码
SSH
Username with private key : 使用SSH用户和密钥
Secret file
:需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径
设置到一个变量中,等构建结束后,所复制的Secret file就会被删除。
Secret text :需要保存的一个加密的文本串,如钉钉机器人或Github的api token
Certificate :通过上传证书文件的方式
常用的使用用户名和密码的方式以及使用SSH和秘钥的方式。
使用用户名和密码的方式
选择类型为Username with password
然后下面输入你的gitlab的用户名和密码,点击确定
那么就可以在全局凭证中看到添加后的凭证了
安装Git插件和Git工具
为了让Jenkins支持从Gitlab拉取源码,需要安装Git插件以及在Jenkins所在的CentOS服务器上安装Git工具。
在系统管理-插件管理-可选插件中搜索Git,并勾选中后点击Install without restart
然后在CentOS中安装Git可以参照
CentOS中通过编译源码包的方式安装Git:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116704345
验证凭证管理拉取代码
安装完Git插件和Git之后,在Jenkins中创建一个任务
然后找到配置-源码管理-Git,在Responsitory中复制Gitlab的项目的Http的地址
注意这里是Http地址,不能是SSH地址
然后再下面的Credentials选择上面添加的凭证。
这一步可能会出现如下问题
Jenkins中连接Git仓库时提示:error: The requested URL returned error: 401 Unauthorized while accessing
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116708668
Jenkins中连接Git仓库时提示:无法连接仓库:Error performing git command: git ls-remote -h
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116711146
然后点击Build Now
然后左下角就会显示构建历史,点击最新的一次,从查看控制台输出
可以看到已经成功从Gitlab将代码拉取到了Jenkins中
可以到Jenkins服务器中查看
cd /var/lib/jenkins/workspace
然后
ls
SSH凭证管理的方式
在Jenkins服务器中使用root账户生成公钥和私钥
首先设置在Jenkins所在的服务器上给git设置下身份的名字和邮箱
git config --global user.name "yourname" git config --global user.email "your@email.com "
注:yourname是你要设置的名字,your@email 是你要设置的邮箱。
ssh-keygen -t rsa -C "your@email.com "(请填你设置的邮箱地址)
然后一路回车,直到在 /root/.ssh目录下生成私钥和公钥
到生成的目录下
cd /root/.ssh
ls
然后将id_rsa.pub公钥的内容复制到GitLab中root账户登录-头像-Settings
-SSH Keys。复制刚才id_rsa.pub文件的内容到这里,点击"Add Key"
然后在Jenkins中,添加凭证
选择类型为SSH Username with pricate key
把刚才生成私有文件内容复制过来
注意这里的私钥的内容一定要复制完全了,包括收尾的两行begin和end
如果复制不全的话会提示权限不足被拒绝
Please make sure you have the correct access rights and the repository exist
然后新建项目-源码管理-Git,这次填写仓库的URL时直接填写项目仓库的ssh地址,然后凭证选择上面新建的凭证。
然后点击这个项目的构建项目一样能构建成功。