照例,先亮環境;軟件的話我這裏假設你已經批准好了.net core 運行環境,未配置能夠看個人這篇[linux(centos)搭建.net core 運行環境]html
騰訊雲linux
centos:7.2
cpu:1核 2G內存 1M帶寬web
docker:18.06.1-cedocker
安裝其實很簡單,就不重複說了,請查看純潔大神這篇文章windows
我這裏新建一個空的.net core web程序用以演示,實際部署時是你的項目centos
建立web項目(我本身使用vs2017 ,如使用vscode的須要本身安裝windows的SDK和使用dotnet命令)瀏覽器
首先確保你的項目能在windows上運行服務器
修改一下運行綁定的的端口號app
添加Dockerfilewebapp
填入以下內容
FROM microsoft/dotnet:2.1-aspnetcore-runtime WORKDIR /app COPY . . ENTRYPOINT ["dotnet", "WebApplication3.dll"]
並設置Dockerfile的屬性
!
ok,接下來發布
我發佈到默認的 bin\Release\netcoreapp2.1\publish 下面,大家能夠自定義目錄
發佈完成後可看到以下文件結構
ok,web程序已經準備好。
上傳應用程序到linux
我這裏使用xftp工具上傳,上傳目錄是 /home/website/WebApplication3
執行:
cd /home/website/WebApplication3 docker build -t webapplication3 .
這裏是去到Dockerfile所在的目錄,構建一個名字叫作webapplication3的鏡像,注意build命令後面的
.
不可獲取,這個.
表明的是當前構建鏡像的上下文路徑;
看到Successfully心情莫名愉悅,這說明鏡像構建成功,我使用命令docker images
看看:
執行下面命令,啓動咱們剛剛構建好的webapplication3 容器
docker run --name webapplication3 -d -p 5004:5004 webapplication3
這樣表示容器正常啓動了
咱們看看:
docker ps
容器正常運行,瀏覽器訪問 http://你的服務器ip:5004
噢耶,大功告成!
至此,.net core 程序docker部署方式完畢,若使用服務方式部署,請看個人 Asp.Net Core 程序部署到Linux(centos)生產環境(一):普通部署