參考別人配置Jenkins的git地址為https,無法連上github拉取項目,所以本章節介紹通過配置SSH地址來連github拉取項目
目錄:
1、springboot項目
1.1 創建名為springcloudproject的springboot項目工程
1.2 已將工程上傳到github中,github工程名為companyProject(這里隨便取)
2、linux環境
2.1 已安裝好jdk、maven、git
2.2 配置git
2.3 生成公鑰
3、 Github配置
3.1 創建Personal access Token
3.2 生成SSH?Keys
3.3 配置webhook
3.4 復制工程的SSH地址下來,后續用,如圖
4、Jenkins安裝以及環境文件配置
4.1 安裝Jenkins
4.2 Jenkins初始化
4.3 全局配置git和maven
4.4 插件安裝
4.5 全局變量設置
5、創建Jenkins任務
5.1 新建任務
5.2 填寫任務名
5.3 填寫任務配置信息
5.4 構建測試
5.5 查看日志
內容:
1、springboot項目
1.1 創建名為springcloudproject的springboot項目工程
主工程下新建個deploy文件夾,并建test.sh文件,內容為: echo "test ....",如圖
1.2 已將工程上傳到github中,github工程名為companyProject(這里隨便取)
2、linux環境
2.1 已安裝好jdk、maven、git
2.2 配置git
執行以下兩行命令
git config --global user.name "git賬號"
git config --global user.email "git綁定的郵箱"
如圖可查看
2.3 生成公鑰
執行命令
ssh-keygen -t rsa -C "剛剛設置的郵箱"
三次回車(圖中紅色框框),可得公鑰生成文件路徑,如下圖
查看公鑰,上圖中/home/company/.ssh/id_rsa.pub文件
拷貝查看到文件的所有內容,后續使用
3、 Github配置
3.1 創建Personal access Token
3.1.1 打開個人Settings頁面
3.1.2 打開Developer Settings 頁面
3.1.3 依次點擊“Personal access tokens” -> “Tokens(classic)” -> “Generate new token”按鈕
3.1.4 勾選如下圖兩處地方,跟填名稱地方就可以了
3.1.5 提交后生成token,復制備份下來
3.2 生成SSH?Keys
3.2.1 按照3.1.1步打開Settings頁面
3.2.2 依次點擊“SSH and GPG keys” -> “New SSH key” 按鈕
3.2.3 填信息生成SSH Key
key欄框位置填2.3步獲取的公鑰
3.3 配置webhook
這步配置,當代碼push上github的時候,會自動通知Jenkins進行構建(需要配合5.3.2步)
3.3.1 打開工程的Settings -> Webhooks -> Add webhook按鈕
3.3.2 添加webhook信息
如下圖,把地址ip改為自己部署Jenkins的服務地址就好了,后面的“/github-webhook/”要加上
3.4 復制工程的SSH地址下來,后續用,如圖
4、Jenkins安裝以及環境文件配置
4.1 安裝Jenkins
https://jenkins.io/download 到Jenkins的官網自行下載所需的war包?
啟動命令:java -jar jenkins.war –-httpPort=8080
然后訪問http://xx.xxx.xx.xx:8080即可
我這里是部署在阿里云服務器,所以要放開8080端口
4.2 Jenkins初始化
打開瀏覽器頁面,輸入http://xx.xxx.xx.xx:8080
復制此路徑
在shell中執行 cat /root/.jenkins/secrets/initialAdminPassword
查看初始密碼,然后復制粘貼到頁面登陸,選擇建議的插件,然后重新設置用戶名密碼
4.3 全局配置git和maven
4.3.1 打開“系統管理”
4.3.2 點擊“全局工具配置”,配置git和maven的安裝路徑
如果git路徑不知道,可以通過命令whereis git查看
4.4 插件安裝
4.4.1 打開“系統管理” -> “插件管理”
4.4.2 搜索安裝Gitlab插件和Maven Integration插件
Gitlab插件:當gitlab有push時觸發jenkins拉取代碼和將構建狀態發送回GitLab Maven Integration:用來簡化建造Maven工程.
安裝完插件后可以重啟一下,直接在網址后邊拼上/restart 可以重啟Jenkins
4.5 全局變量設置
4.5.1 打開“系統管理” -> “系統配置”
4.5.2 往下找到“github服務器”,點擊添加,然后在API URL框填上“https://api.github.com”
4.5.3 點擊憑據下的“添加”按鈕
類型選擇 “Secret text”
Secret項填 3.1.5步生成的token,最后兩個不用填
5、創建Jenkins任務
5.1 新建任務
5.2 填寫任務名
5.3 填寫任務配置信息
5.3.1 選擇“GitHub項目”,url為自己項目的url
5.3.2 Triggers選擇(這個看自己需求)
5.3.3 流水線配置
流水線配置有兩種,這里都介紹下
5.3.3.1 Pipeline script(整章節是這種配置,此配置進行拉取github代碼,并mvn打包java工程)
內容如下
pipeline {agent anystages {stage('Checkout') {steps {//進行拉取代碼git branch: 'dev', credentialsId: '661ea938-9146-4001-bba6-ffa195311c51', url: 'git@github.com:DaQinDiGuo011/companyProject.git'}}stage('Compile-Package') {steps {//進行編譯打包sh 'mvn -Dmaven.test.failure.ignore=true clean package'}}}
}
5.3.3.2?Pipeline script from SCM(此選項是拉取github代碼,然后執行sh腳本,這部只是為了介紹用法)
Repository URL填寫3.4步中的地址
Credentials選擇下一步操作添加的用戶密碼
我使用的是dev分支,所以新增了個dev
gitweb地址填寫自己項目的瀏覽器地址
點擊添加Credentials
用戶密碼為自己登錄github上的用戶密碼
?腳本路徑,添加完保存
該路徑為1.1步里工程目錄下的deploy/test.sh腳本
5.4 構建測試
點擊構建,開始把項目pull到工作空間,并編譯打包
5.5 查看日志
點擊執行的任務里,點擊“Console Output”查看日志,可到部署Jenkins服務器路徑查看Jenkins拉取下來的項目并編譯的日志,日志最后可看到工作空間地址