1. 程式人生 > >Windows下docker的安裝,將ASP.NET Core程序部署在docker中

Windows下docker的安裝,將ASP.NET Core程序部署在docker中

很好 etc all 虛擬 mark work 記得 配置 netcore

參考文章:
https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html
https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html
docker for windows下載連接: https://docs.docker.com/docker-for-windows/install/

關於配置的細節以及docker的下載安裝等操作,參考文章中已經介紹的很詳細了。
由於我從來沒搞過虛擬機也完全不懂linux語言等...所以還是耽誤了半天時間...
由於公司最近在搞服務化,看了些soa相關的資料,都會多多少少提到docker,本人表示很好奇,特此來研究下
所以本文主要附上一個傻瓜教程。以及把配置中需要註意的點說一下。
在閱讀本文之前建議先看上面的兩篇參考文章
文中沒有詳細解說的內容均可在參考文章中查到

第一步:安裝docker for windows

安裝之前需要開啟 Hyper-V虛擬機功能,啟用方式可以自己搜索,Hyper-V 啟動之後,同時也要到bios中啟用cpu的虛擬化。
好吧如果你實在懶得查詢的話我可以直接給你發一個百度連接:https://jingyan.baidu.com/article/15622f24017461fdfdbea554.html
直到任務管理器中的虛擬化顯示開啟表示成功
技術分享圖片

第二步:創建一個webapi程序

當然你可以在vs中或者隨便哪裏創建一個,然後將程序發布
技術分享圖片
技術分享圖片

第三步:創建Dockerfile文件

在webapi的根目錄下創建一個文本文檔Dockerfile.txt


內容:

# 聲明使用的基礎鏡像
FROM microsoft/dotnet:latest
# 將本地dotnet core 應用拷貝到 容器 /app/ 目錄下
COPY bin/Debug/netcoreapp2.0/publish/ /app/
# 設置工作目錄
WORKDIR /app
# 設置導出端口
EXPOSE 5000/tcp
# 指定應用入口點
ENTRYPOINT ["dotnet", "/app/NetCore.dll"]

這裏解釋下部分參數

  • 第1行:代表程序的鏡像需要依賴哪個鏡像 :latest 表示鏡像版本為最新的
  • 第2行:將你的程序文件夾拷貝到 鏡像的app目錄下
  • 最後一行:NetCore.dll
    是你的api的dll名稱

編輯完成之後記得將文件的後綴名去掉

第三部:創建鏡像

進入power shell界面
cd命令切換到webapi的根目錄
執行命令:
docker build -t myapi .
註意命令中的最後一個點 代表的是命令從你的當前目錄下執行
不出意外的話鏡像創建完畢
技術分享圖片

然後繼續執行命令運行:
docker run -it -p 5000:5000 myapi
這裏的5000:5000 代表把容器內的5000端口映射到你主機的5000端口
然後 http://localhost:5000 就可以訪問啦!
技術分享圖片

Windows下docker的安裝,將ASP.NET Core程序部署在docker中