在發佈ASP.NET Core網站之前,先介紹一下DaoCloud 一個免費的docker雲容器服務平臺。登錄官方網站,建立一臺docker主機,這臺主機有120分鐘的使用時間,對於鄙人學習使用正好合適。這臺docker主機通常是ubuntu主機,同時docker裏面已經集成了一些鏡像例如:mysql 、nginx等。html
docker pull microsoft/dotnet
docker images
docker run microsoft/dotnet-samples
上圖是在主機中運行了 asp.net mvc 後的結果,說明建立的項目成功運行了。下面把這個asp.net mvc 製做成鏡像發佈到docker中。mysql
#鏡像來源爲 microsoft/dotnet:1.1-runtime 分號後面表示版本信息
FROM microsoft/dotnet:1.1-runtime
#聲明變量 在docker build建立鏡像時 使用--build-arg 傳入參數source
ARG source
#設置路徑指令 至關於cd 切換到根目錄/app路徑下
WORKDIR /app
#複製指令 若是source建立是沒有賦值,默認路徑爲obj/Docker/publish
COPY ${source:-obj/Docker/publish} .
#指定容器啓動時執行的命令
ENTRYPOINT ["dotnet", "ConsoleApp1.dll"]
FROM microsoft/dotnet:lastest
WORKDIR /app
COPY out .
ENTRYPOINT ["dotnet","app.dll"]
dotnet restore
dotnet publish -c Release -o out
docker build -t app .
docker run -p 5000:80 -e "ASPNETCORE_URLS=http://+:80" -it --name test --rm app