.Net Core自動(dòng)化部署之利用docker版jenkins部署dotnetcore應(yīng)用的方法
前言
本文主要介紹了關(guān)于.Net Core自動(dòng)化部署用docker版jenkins部署dotnetcore應(yīng)用的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的實(shí)現(xiàn)步驟吧。
安裝docker版jenkins
因?yàn)閖enkins的docker版本本身沒有 dotnetcore的環(huán)境,所以我們需要先自己動(dòng)手制作下包含dotnet環(huán)境的jenkins Docker Container
Dockerfile
FROM jenkins/jenkins # Switch to root to install .NET Core SDK USER root # Show distro information! RUN uname -a && cat /etc/*release # Based on instructiions at https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-current # Install dependency for .NET Core 2 RUN apt-get update RUN apt-get install -y curl libunwind8 gettext apt-transport-https # Based on instructions at https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-current # Install microsoft.qpg RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg RUN mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg RUN sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-stretch-prod stretch main" > /etc/apt/sources.list.d/dotnetdev.list' # Install the .NET Core framework RUN apt-get update RUN apt-get install -y dotnet-sdk-2.1.4 # Switch back to the jenkins user. USER jenkins
為了方便我已經(jīng)把配置信息放到了github上大家可以訪問直接使用
https://github.com/YahuiWong/jenkins-dotnet-core (本地下載)
使用步驟
初始化docker環(huán)境
git clone https://github.com/YahuiWong/jenkins-dotnet-core.git cd jenkins-dotnet-core sh init.sh docker-compose up -d
初始化配置jenkins
- Open ip:8080 on the browser
- vi jenkins_home/secrets/initialAdminPassword & Set the initialAdminPassword string to your jenkins page
至此安裝完畢。
配置jenkins構(gòu)建dotent core的任務(wù)
構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目

配置源碼管理資料

注意:初次配置的話 需要在 添加一個(gè)可以訪問代碼地址的 Credentials
配置構(gòu)建腳本
如下圖步驟添加打包腳本

打包腳本示例
echo '============查看打包環(huán)境================' pwd ls echo $PATH whoami which dotnet dotnet --info dotnet --version echo '============================begin restore=======================================' dotnet restore echo '============================end restore=======================================' echo '============================cd project=======================================' cd ./您的項(xiàng)目路徑 echo '============================begin build=======================================' dotnet build # 為了生成XML注釋文件 用于swagger注釋 rm -rf $WORKSPACE/jenkins_publish mkdir $WORKSPACE/jenkins_publish dotnet publish -c:Release -o $WORKSPACE/jenkins_publish # 如果針對(duì)給定運(yùn)行時(shí)發(fā)布項(xiàng)目帶上-r 如:-r centos.7-x64 cp ./bin/Debug/netcoreapp2.0/您的項(xiàng)目路徑.xml $WORKSPACE/jenkins_publish/ # 拷貝swagger注釋 echo '============================end build======================================='
配置發(fā)布途徑
發(fā)布插件Publish Over FTP使用說明
我這里使用的是 jenkins的Publish Over FTP插件,安裝好此插件之后在 系統(tǒng)管理->系統(tǒng)設(shè)置->Publish over FTP 里可以新增一個(gè)你要發(fā)布的ftp服務(wù)器信息。為了保證ftp可以正常連接建議嘗試下右下角的Test Configuration確認(rèn)success
上面我們已經(jīng)配置好Publish Over FTP要用的ftp賬號(hào),新增我們新增構(gòu)建后操作如下圖選擇此插件

然后選擇配置好的ftp選項(xiàng),配置如下所示

注意:這里的配置信息中 jenkins_publish是和打包腳本對(duì)應(yīng)的
保存打包任務(wù)
立即構(gòu)建
點(diǎn)擊立即構(gòu)建之后,把構(gòu)建任務(wù)開始進(jìn)行中

如果想看的實(shí)時(shí)的構(gòu)建信息可以點(diǎn)擊如下圖看到控制臺(tái)輸出

構(gòu)建完畢
打開部署站點(diǎn)地址,發(fā)現(xiàn)站點(diǎn)已經(jīng)運(yùn)行起來了

重點(diǎn)說明
Nuget配置說明
如果您的.NET CORE項(xiàng)目使用的了第三方或者自建nuget服務(wù),您需要在 配置下 jenkins_home/.nuget/NuGet/NuGet.Config的信息
如我的使用了國(guó)內(nèi)博客園的nuget加速地址和自建的nuget服務(wù)配置如下
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> <add key="nuget.cnblogs.com" value="https://nuget.cnblogs.com/v3/index.json" /> <add key="dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json" value="https://dotnet.myget.org/F/aspnetcore-dev/ap i/v3/index.json" /> <add key="192.168.1.32:9001/nuget" value="http://192.168.1.32:9001/nuget" /> </packageSources> <packageRestore> <add key="enabled" value="True" /> <add key="automatic" value="True" /> </packageRestore> <bindingRedirects> <add key="skip" value="False" /> </bindingRedirects> <packageManagement> <add key="format" value="0" /> <add key="disabled" value="False" /> </packageManagement> </configuration>
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
- Jenkins+Docker?一鍵自動(dòng)化部署?SpringBoot?項(xiàng)目的詳細(xì)步驟
- 基于Docker與Jenkins實(shí)現(xiàn)自動(dòng)化部署的原理解析
- docker+gitlab+jenkins從零搭建自動(dòng)化部署
- 基于Docker+Jenkins實(shí)現(xiàn)自動(dòng)化部署的方法
- springboot docker jenkins 自動(dòng)化部署并上傳鏡像的步驟詳解
- 從零搭建docker+jenkins+node.js自動(dòng)化部署環(huán)境的方法
- Jenkins整合Docker實(shí)現(xiàn)CICD自動(dòng)化部署的詳細(xì)過程(若依項(xiàng)目)
相關(guān)文章
asp.net上傳execl文件后,在頁面上加載顯示(示例代碼)
本篇文章主要是對(duì)asp.net上傳execl文件后,在頁面上加載顯示(示例代碼)進(jìn)行了介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2014-02-02
.NET8.0發(fā)布到IIS的實(shí)現(xiàn)步驟
很多學(xué)習(xí).Net的朋友初次接觸并不知道一個(gè).Net應(yīng)用怎么發(fā)布到IIS服務(wù)器中去,本文主要介紹了.NET8.0發(fā)布到IIS的實(shí)現(xiàn)步驟,感興趣的可以了解一下2024-05-05
WPF中button按鈕同時(shí)點(diǎn)擊多次觸發(fā)click解決方法
這篇文章主要為大家詳細(xì)介紹了WPF中button按鈕同時(shí)點(diǎn)擊多次觸發(fā)click的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
ASP.NET?Core中的Caching組件簡(jiǎn)介
這篇文章介紹了ASP.NET?Core中的Caching組件,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04
aspx后臺(tái)傳遞Json到前臺(tái)的兩種接收方法推薦
下面小編就為大家?guī)硪黄猘spx后臺(tái)傳遞Json到前臺(tái)的兩種接收方法推薦。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-05

