環境 centos7.9,.NET5
一、Jenkins搭建
1)下載Jenkins的war包
在\home目錄建一個jenkins目錄放jenkins的包
#進入\home目錄 cd \home #創建 jenkins目錄 mkdir jenkins
在jenkins目錄下載war包
#進入jenkin目錄 cd \home\jenkins #下載jenkins的war包 wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
如果包wget命令用不了的話,安裝一下
#如果wget命令用不了的話,執行以下命令 yum -y install wget
下載完后jenkins目錄下產生一個jenkins.war檔案

2)安裝java jdk
看到war,可以知道jenkins是java寫的,所以要安裝java,官網上提示安裝java1.8或java11,這里安裝java1.8
#下載java jdk的rpm檔案 wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" \ http://download.oracle.com/otn-pub/java/jdk/8u301-b09/d3c52aa6bfa54d3ca74e617f18309292/jdk-8u301-linux-x64.rpm #授權限 chmod +x jdk-8u301-linux-x64.rpm #安裝 rpm -ivh jdk-8u301-linux-x64.rpm
如果報 Unable to establish SSL connection 執行一下下面命令
#如果報Unable to establish SSL connection.執行下面命令 yum install openssl openssl-devel -y
執行完上面3個命令,看下java版本資訊
java -version
看到已經安裝好了

3)安裝Jenkins
進入到上面的jenkins.war包的目錄\home\jenkins
#啟動,調通前用這個,沒問題后再用后臺啟動,關閉表單就停止,或ctrl+c停止 #java -jar jenkins.war --httpPort=8081 #后臺運行 --后臺啟動,表單關閉了,也在后臺啟動 nohup java -jar jenkins.war --httpPort=8081 & #輸入jps 查看當前jenkins啟動的行程號 #ps ef|grep jenkins 查詢當前啟動的jenkins的行程號 #如果要關閉,kill -9 埠號
執行上面命令中的 nohup java -jar jenkins.war --httpPort=8081 & 后,瀏覽器打開ip:8081,這里安裝程序要小等一會才能打開

然后按提示命令打開 vi /root/.jenkins/secrets/initialAdminPassword 檔案把密碼復制到輸入框上
vi /root/.jenkins/secrets/initialAdminPassword
然后到這個界面,如果不熟悉,就用推薦的,

一直等待安裝完,如果有失敗是網路原因,重試就能裝上了,

裝完后跳到這個界面,輸入用戶名密碼,郵件,

然后到這個界面,直接保存,

然后開始使用,來到jenkins界面,右上方有個鈴,點擊升級,

裝完重啟

安裝完成,

如果遇到升級慢的問題解決
1、修改/home/jenkins/hudson.model.UpdateCenter.xml檔案
vi /home/jenkins/hudson.model.UpdateCenter.xml
修改為:
<sites> <site> <id>default</id> <url>http://mirror.xmission.com/jenkins/updates/update-center.json</url> </site> </sites>
2、設定 default.json 權限 安裝插件什么的時候,不需要google.com,改成百度
cd /root/.jenkins/updates/
然后執行下面的
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu .cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g ' default.json
修改完之后,需要重新啟動
二、github .NetCore專案準備
github創建一個私有倉庫

創建完后進入倉庫,把地址復制出來
把專案克隆到本地,這里用vs2019的git功能

點克隆后會彈出一個github的授權頁面授權給vs,然后成功把專案克隆到本地,

創建一個.NetCore程式,并放到剛才克隆的目錄

運行一下查看界面

因為我們要把.NetCore程式部署到Docker,所以建一個DockerFile檔案

點了后會會產生一個Dockerfile檔案,在根目錄,需要把它移動到外面,和專案檔案夾同級,

Dockerfile的內容是vs自動生成的,內容如下,注意一下Copy和dotnet restore 路徑,前面多了個專案名的路徑,有的vs自動生成沒帶上,

然后提交修改,

把專案推到github

打開githug看到專案已經提交成功

三、服務器git客戶端安裝
回到服務器,執行安裝git客戶端命令
#安裝git客戶端 yum install -y git
安裝完客戶端后,執行命令生成ssh key命令,一直回車確認即可,
#生成ssh key ssh-keygen -t rsa -C '[email protected]'

執行完命令后,可以看到把ssh key生成到了/root/.ssh目錄下了,id_rsa檔案為私鑰,id_rsa.pub為公鑰,
執行vi /root/.ssh/id_rsa.pub打開公鑰,

把上面的公鑰復制到github上的ssh key里,


還有一個要安裝Docker,如果機器沒安裝有,參考我前面的一篇文章,把第一步做了就可以了,Docker環境安裝,基本命令集合
四、Jenkins自動化構建任務創建
回到jenkins,新建任務

輸入任務名稱,構建自由風格專案

進去原始碼管理,選擇Git,倉庫URL填上面克隆github專案的ssh地址,因為專案是私有的,因為是私有的,所以也要把git的私鑰憑證加進來,
復制github上的地址

填到jenkins的git上,把分支改為github的默認main分支,然后添加github憑證,

憑證填上面的id_rsa檔案里面的私鑰,命令 vi /root/.ssh/id_rsa然后復制里面的私鑰填到sshkey憑證里面,

配置完后外面選剛才的配置,

構建環境,把超時時間設10分鐘,因為訪問github網路可能會有點慢,專案檔案大的時候拉取需要時間,

構建,選擇執行shell命令,命令如下,生成docker鏡像,然后運行容器實體,然后完成,
#!/bin/bash # 獲取短版本號 GITHASH=`git rev-parse --short HEAD` echo ---------------開始編譯程式...------------------ echo ---------------Building Docker Image...-------- ---------- docker build -t jkdemo:$GITHASH . docker tag jkdemo:$GITHASH jkdemo:latest echo ---------------Launching Container...---------- -------- docker rm -f jkdemo1 docker run -d -p 5001:80 --name jkdemo1 jkdemo:latest

在這個任務下點擊立即構建,就會自動拉取代碼,然后執行里面的shell命令發布,

構建成功

訪問部署的.NetCore ,ip:5001,訪問成功

更新站點,提交


再點擊立即構建,構建成功,點進去還能看到提交的內容


再訪問站點,發現更新了,

后面的修改,提交后,只需要點擊構建就可以自動發布啦!公司中一般都是用自己搭的gitlab,只要把github的操作換成gitlab,操作程序也是一樣的,
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/295779.html
標籤:.NET Core
