凭据可以用来存储需要密文保护的数据库密码、Gitlab密码信息、Docker私有仓库密码等,以便
Jenkins可以和这些第三方的应用进行交互。
Jenkins 安装插件使用凭证管理
安装Jenkins的时候默认选择插件安装就不用再安装凭证插件,没安装的可以后续安装 (直接安装无需重启)
Manage Jenkins - Manage Plugins - 可选插件中安装Credentials Binding
可添加的凭证有五种:
- Username with password : 用户名和密码
- SSH Username with private key : 使用SSH用户和密钥
- Secret file : 需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径设置到一个变量中,等构建结束后,所复制的Secret file就会被删除。
- Secret text : 需要保存的一个加密的文本串,如钉钉机器人或Github的api token
- Certificate : 通过上传证书文件的方式
常用的凭证类型有: Username with password(用户密码)和 SSH Username with private key(SSH密钥)
一、以 GitHub 拉取项目为例,演示 Jenkins 的如何管理 GitHab 的凭证
1、GIthub 用户密码类型
2、创建新项目测试凭证
3、在项目里面只配置 GitHub 使用https链接,测试凭证是否成功(保存,后直接点击构建即可)
控制台有对应的输出,成功拉取了代码
在 /root/.jenkins/workspace/web_test_auth_passwd 目录下,发现已经从Gitlab成功拉取了代码到Jenkins中
二、SSH密钥类型
1、使用 root 用户生成公钥和私钥
ssh-keygen
cd /root/.ssh/ && ls
id_rsa id_rsa.pub known_hosts
私钥文件 公钥文件
把公钥 “id_rsa.pub” 内容拷贝到 GitHub 中:settings - SSH and GPG keys - New SSH key