Jenkins 基礎篇-憑證配置
我們在正式開始使用 Jenkins 之前還要先配置一些憑證,這些憑證的作用主要是用於認證,例如我們要從程式碼倉庫拉取程式碼,就需要用到程式碼倉庫的帳號密碼或者密鑰;我們要登錄遠程伺服器也需要用戶名密碼或者密鑰文件;使用一些第三方平台會用到一些 AppId,AccessKey 之類的用於認證授權的資訊,這些東西都可以統稱為憑證,目前 Jenkins 支援如下類型的憑證:
- Username with password
- GitHub App
- SSH Username with private key
- Secret file
- Secret text
- X.509 Client Certificate
- Certificate
其中 【Username with password】和【SSH Username with private key】是應用最廣泛的。我們在用 Jenkins 構建打包項目時會從程式碼倉庫拉取程式碼,我們先來配置一下程式碼倉庫的帳號和密碼。
去到 Jenkins 的【系統管理】→ 【Manage Credentials】下:


在【全局憑據】裡面添加新的憑證:

類型選擇【Username with password】,填入正確的用戶名、密碼、ID、和描述資訊,ID不填的話會自動生成UUID,這個ID後面在流水線腳本程式碼裡面會用到,盡量寫得有意義好辨識:

然後我們再添加一個【SSH Username with private key】類型的憑據,還是拿拉取程式碼來舉例,目前主流的程式碼託管平台都是支援 HTTPS 或者 SSH 方式訪問拉取、提交程式碼,HTTPS 是使用帳號密碼的方式,SSH 是採用密鑰的方式。所以我們這來添加一個【SSH Username with private key】類型的憑據,需要注意的是【SSH Username with private key】憑據不僅僅是適用於拉取程式碼,像之前介紹的還可以用於登錄遠程伺服器。
我們這裡添加一個【SSH Username with private key】類型的憑據,用於支援 SSH 方式拉取程式碼:

點擊【Add】添加我們之前 maintainer 系統用戶的密鑰文件內容,也就是 /home/maintainer/.ssh/maintainer 私鑰文件中的內容,然後將 /home/maintainer/.ssh/maintainer.pub 公鑰文件的內容添加到程式碼管理平台中,例如 Gitee 的 【SSH公鑰】中,其他程式碼管理平台原理一樣。
將 /home/maintainer/.ssh/maintainer 私鑰文件中的內容配置到 Jenkins 的憑據中:

將 /home/maintainer/.ssh/maintainer.pub 公鑰文件的內容添加到程式碼管理平台中:

這樣配置好後,Jenkins 就可以拉取我們 Git倉庫的程式碼了。
