<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Jenkins+IIS+Bonobo.Git.Server 搭建適用dotnet開發者的小團隊的devops環境

      前言:

      1、在一個小團隊里面,可能我們既是開發(前端+后端)也是運維還是售前售后服務。我們樣樣都得會,但說實話,樣樣都不是很精!但是我們也夢,夢想著一切能像大廠那樣,開發是開發,運維是運維,各司其職。作為一個從后端開發一路走過來的我,今天也越俎代庖,來談一件運維的事:IIS環境下的dotnet core應用程序的自動部署。一則是為自己留一個備忘,二則是為和我們有相似環境的同仁提供一個借鑒于參考。不足之處勿噴!

      2、Java開發的朋友們請滑走!玩k8s+docker的朋友們請滑走!

      3、本篇將按照如下段落進行整理:

      • 環境介紹
      • 在本地Windoss Server 2022服務器上安裝Jenkins
      • 在云端Windows Server 2022應用程序服務器上準備:IIS+Open SSH Server部署
      • 一步一步帶你實現自動化部署一個.net core應用程到云端服務器
      • 附加:如果私有化部署了nuget服務器,在Jenkins中如何處理

       

      從此告別:編譯 > 打包 > 登錄服務器 > 上傳程序包 >  復制程序包 > 停止IIS站點 > 解壓程序包 > 開啟IIS站點  這樣一系列重復、低效、繁瑣的動作!!!!

       

      一、環境介紹

      1、在本地有2臺服務器:

      • 服務器(10.10.18.3)部署與開發一樣的環境,并安裝Jenkins
      • 服務器(10.10.18.4)本地的nuget服務 與 Bonobo.Git.Server服務

      說明:

        (1)為什么會有本地的nuget服務:在長久的開發過程中團隊已經形成了一些固有的程序包,它大大提高了開發效率,但是它又不適合上傳到公共的nuget倉庫,所以便有了本地的nuget服務。

        (2)Bonobo.Git.Server服務是團隊歷史以來都在使用的私有git倉庫,它已經沒有gitee等當代的git倉庫那么先進,但是團隊也沒有更換的勇氣,簡單設置一下也能夠和Jenkins配合著使用

        (3)以上兩款,都是開源的項目,拿來就可以本地部署,有興趣的朋友可以打開:BaGet——本地nuget服務  和   Bonobo.Git.Server本地的Git倉庫

       

      2、云端有2臺服務器:IP地址分別是:1.1.1.1和2.2.2.2。在其上都部署IIS和Open SSH Server。 

       

      二、在本地的Windows Server 2022服務器上安裝Jenkins

      Jenkins的安裝,網上相關的篇章已經太多了,此處不再贅述。隨便推薦一篇:Windows系統下Jenkins安裝配置【新手教學】_jenkins windows-CSDN博客

      同時,在此服務器上,部署上與開發一樣的環境。 

       

      三、在云端的Windows Server 2022服務器上準本IIS+Open SSH Server

      Windows Server上開啟IIS相關的文章也經太多了,此處不再贅述。隨便推薦一篇:Windows Server 2019 安裝IIS 服務 - 愛吃糖的寶寶 - 博客園 (cnblogs.com)

      在Windows Server 2022上開啟Open SSH Server,可以參考這篇:windows server 開啟 openssh_windowsserver開啟ssh-CSDN博客

      說明:

        (1)或許,你在其他文章中看到,IIS程序自動化部署,需要開啟 “Web Deploy組件”,但Jenkins+IIS的程序自動化部署,不需要開啟 “Web Deploy組件”

        (2)Open SSH Server是什么,為什么要開啟。說的直白一點,在WinServer 上開啟Open SSH Server,就可以讓Windows機器像Linux機器那樣,通過命令行鏈接并操作電腦

        (3)在Win Server上開啟Open SSH Server,一定要考慮安全。或許你可以通過防火墻策略,只讓你本地機器通過ssh鏈接等等。

        

      四、一步一步帶你實現自動化部署一個.net core應用程到云端服務器

      1、在Jenkins上安裝兩個必要插件:Publisher Over SSHGeneric Webhook Trigger

      image

      image

      image

       

       

       

      2、在Jenkins中配置SSH主機(就是第三點配置好的云端服務器)

      step-1

      image

      step-2

      image

      step-3

      image

      image

        

      2、在vs 2022中創建一個asp.net core web項目(.net 8.0),并提交到本地git倉庫:https://10.10.18.4:8888/TestJenkins.git

      image

       

      3、在Jenkins中創建項目并配置

      • 創建Jenkins項目

      image

      • 常規配置項

      image

      • 源代碼管理配置項

      image

      • 自動構建觸發器

      image

       將上面拼接的URL,按照下圖所示的方法使用: 

      image

      上面這步操作,是確保你的代碼提交到Bonobo.Git.Server搭建的git倉庫時,能夠觸發Jenkins自動構建

      • 執行環境通用設置 

      image

      •  構建步驟

      image

      說明:

       

      image

      說明:

      • 這一步的作用是:停止遠程服務器上IIS下對應的站點和應用程序池
      • 命令說明:cmd /c "cd C:\Windows\System32\inetsrv\ & appcmd.exe stop site 6666.TestJenkins & appcmd.exe stop apppool /apppool.name:6666.TestJenkins"
      • 為什么會是這種格式,這里有說明:https://issues.jenkins.io/browse/JENKINS-17809
      • “appcmd.exe stop site 6666.TestJenkins”——6666.TestJenkins是網站名稱
      • “appcmd.exe stop apppool /apppool.name:6666.TestJenkins”——6666.TestJenkins是應用程序池名稱

       

      image

       

      說明:

      • 這一步操作,是將本地發布的程序文件,傳送到遠程主機上。然后在遠程主機上復制文件到IIS站點目錄下。最后開啟應用程序池,開啟站點。
      • 命令:cmd /c "cd C:\Users\Administrator\JenkinsWorkspace & xcopy /s /y TestJenkins D:\www\TestJenkins & rd TestJenkins /s /q & cd C:\Windows\System32\inetsrv\ & appcmd.exe start apppool /apppool.name:6666.TestJenkins & appcmd.exe start site 6666.TestJenkins"
      • cd C:\Users\Administrator\JenkinsWorkspace——是切換cmd的工作目錄。此目錄下已經由Jenkins自動創建了目錄TestJenkins。在TestJenkins目錄里面,即是程序文件。
      • xcopy /s /y TestJenkins D:\www\TestJenkins —— 是將TestJenkins里的程序文件,復制到D:\www\TestJenkins目錄。D:\www\TestJenkins就是你站點指向的目錄。
      •  rd TestJenkins /s /q ——是刪除TestJenkins目錄。
      • appcmd.exe start apppool /apppool.name:6666.TestJenkins —— 開啟站點對應的應用程序池
      • appcmd.exe start site 6666.TestJenkins —— 開啟站點。

       

      • 到此,所有配置完成。點擊“Build Now”,開始構建,然后查看最終效果:

      image

       

       

      五、附加:如果你私有化部署了本地Nuget服務,Jenkins中如何處理

      1、如果你使用了本地nuget服務,在Jenkins中執行dotnet publish -c Release發布命令時,極有可能不成功。這是,你需要dotnet nuget命令,添加您的本地nuget源。請參考文檔:https://learn.microsoft.com/zh-cn/dotnet/core/tools/dotnet-nuget-add-source

      2、您可以在Jenkins的命令行輸入框中輸入以下命令

        dotnet nuget list source——查看Jenkins環境下的nuget包源有哪些

        dotnet nuget config paths——查看Jenkins環境下的nuget包源配置文件的路徑(我遇到的情況是:這個路徑和我們直接通過控制臺輸入dotnet命令使用的nuget包源配置文件的路徑不一致。)

        dotnet nuget config get all——查看Jenkins環境下的nuget包源配置項有哪些

        

       

      posted @ 2025-09-30 18:38  楊長波  閱讀(115)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 大陆精大陆国产国语精品| 无码日韩精品一区二区三区免费| 久久精品蜜芽亚洲国产AV| 国产午夜福利在线机视频| 国产一区国产精品自拍| 精品人妻午夜福利一区二区| 人人澡人人妻人人爽人人蜜桃| 最新AV中文字幕无码专区| 久99久热精品免费视频| 亚洲国产一区二区三区久| 一区二区三区四区亚洲自拍| 日韩成人一区二区三区在线观看| 人妻无码∧V一区二区| 最近2019中文字幕大全第二页| 乱女乱妇熟女熟妇综合网| 色悠悠成人综合在线视频| 亚洲成人av在线资源网| 久久国产精品精品国产色婷婷| 国产真人无遮挡免费视频| 在线a级毛片无码免费真人| 江北区| 亚洲综合精品中文字幕| 精品国产一区二区三区麻豆| 美女黄18以下禁止观看| 日韩激情无码av一区二区| 日韩卡1卡2卡三卡免费网站| 视频一区视频二区制服丝袜| 久久熟女| 午夜不卡欧美AAAAAA在线观看| 国产99视频精品免费视频36| 国产精品亚洲mnbav网站| 人人澡人人妻人人爽人人蜜桃| 国产精品无码无卡在线播放| 精品天堂色吊丝一区二区| 成av人电影在线观看| 亚洲av激情五月性综合| 制服丝袜美腿一区二区| 国产乱妇无码大片在线观看| 亚洲国产午夜精品理论片| 亚洲高清有码在线观看| 成人午夜在线观看刺激|