ASPNetCore Docker 搭建https服務器


本教程需要有自己已經申請好的證書 ,沒有證書請參照官方教程。 Docker 就不多說了,咱只要知道怎么用先。

 

環境

 core:asp net core 2.2

開發機:win10 LTS 

服務器:window server 2019 (這里應該給我一頂原諒帽)

 參考:Hosting ASP.NET Core Images with Docker over HTTPS   麻煩沒看懂的給我點個贊(ಥ_ಥ)

 

go

開發機:

1,創建一個aspnetcore項目

我這里起名叫 "zlyxm.DockerAspNetCoreHttps"    (っ ̯ -。) 

 

 

 

創建完成后會對docker環境檢查,這個不用管

  

 

2.生成docker映像?

  

等待完成生成

 

 記住生成的鏡像名 zlyxmdockeraspnetcorehttps 第4步會用到

 

3.證書配置

在運行輸入“%USERPROFILE%\.aspnet\https\”打開證書存放目錄

將你的SSL證書放到這個目錄,這里證書名以“2761828_www.xxxxxxx.com.pfx” 為例 。

 

4,命令行運行docker

 docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORT=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="zlyxmpassword" -e ASPNETCORE_Kestrel__Certificates__Default__Path=\https\2761828_www.xxxxxxx.com.pfx -v %USERPROFILE%\.aspnet\https:C:\https\ zlyxmdockeraspnetcorehttps

 

 然后網頁打開 https://localhost:8001

 

 

在局域網內輸入你電腦IP+8001也可以訪問。(你電腦防火牆沒開的話)

也可以你自定義名稱,后面運行的命令里證書名改為你證書的名稱就行了

 

 導出鏡像

在命令行中按Ctrl+C退出先,輸入

docker save -o D:\zlyxm.tar zlyxmdockeraspnetcorehttps

我這里保存文件位置是 "D:\zlyxm.tar" ,各位自己改

 

 

5,服務器部署

開發機運行正常就可以下一步,服務器部署了。

服務器必須環境:Docker for Windows Installer

        將你的證書發送到服務器的目錄,這里我證書名為"2761828_www.xxxxxxx.com.pfx"  ,放在服務器目錄是 "C:\Users\Administrator\Desktop\https"

            dotnet-sdk-2.2.401-win-x64

 

(2)環境搭建

部署方法網上大多基於HUB,我們這里部署基於簡單開發機鏡像導出然后發送到服務器。

服務器搭建也可以按照來部署 https://blog.csdn.net/aqtata/article/details/83044616

 

將開發機導出的 .tar鏡像文件發送到服務器,服務器運行

docker load --input C:\Users\Administrator\Documents\U\zlyxm.tar

“C:\Users\Administrator\Documents\U\zlyxm.tar”目錄改為你文件路徑

 

(3)運行服務器

docker run --rm -it -p 80:80 -p 443:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORT=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="2761828_www.xxxxxxx.com.pfx" -e ASPNETCORE_Kestrel__Certificates__Default__Path=\https\2761828_yichude.com.pfx -v %USERPROFILE%\.aspnet\https:C:\https\ zlyxmdockeraspnetcorehttps

 

 

 

 

 

 

 

 

打開瀏覽器

 

 

 

期間有一個大問題,各種 Access is denied ,可能是服務器對 C:\Users\Administrator\Desktop\https 沒有訪問權限,結果

 

 

各種查詢無果,死馬當活馬醫,添加了Everyone權限,我覺得分分鍾要被斃了。

 

 

 

 

 

趕緊運行,跑起來了!嚇得我趕緊再關掉Everyone權限,具體原因以后再深究。。

 

 啊啊啊啊,不行了,排版完全亂了,不管,項目急着上趕緊溜

 

另聽說 docker -v 掛載文件是開發用的,鵝媽媽木木木,有大佬求留言告知生成環境正確的姿勢!!

+1 另,docker run --rm -it -p 一般是開發模式用的,這里僅做入門。

筆者也是剛入門docker 沒半個月,錯誤的地方肯定也很多,大家多指導!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM