依微軟的的範例好像也做不太出來(功力太淺)
網路上找到了[個人筆記] docker個人筆記進行測試後修改居然可以使用
來看一下我的目錄吧
一個方案四個專案將Dockerfile放一起
撰寫Dockerfile(這邊是重點寫錯就無法成功)
內容為何可參考如何將 ASP.NET Core 2.1 網站部署到 Docker 容器中
FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build WORKDIR app # copy csproj and restore as distinct layers COPY *.sln . COPY coresample.language/*.csproj ./coresample.language/ COPY coresample.model/*.csproj ./coresample.model/ COPY coresample.service/*.csproj ./coresample.service/ COPY coresample.web/*.csproj ./coresample.web/ # copy everything else and build app COPY coresample.language/. ./coresample.language/ COPY coresample.model/. ./coresample.model/ COPY coresample.service/. ./coresample.service/ COPY coresample.web/. ./coresample.web/ RUN dotnet publish -c Release -o out FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 AS runtime ENV ASPNETCORE_URLS=http://+:8080 WORKDIR /app EXPOSE 8080/tcp COPY --from=build /app . ENTRYPOINT ["dotnet", "coresample.web.dll"]2022-08-31補充vs2022在專案 > 右鍵 > 加入 > Docker支援也可跑出上述功能
到專案料夾底下打開powershell執行
docker build -t samplecore . 中間略... Successfully built da35a45ea2bf Successfully tagged samplecore:latest開啟軟體Docker Desktop
也可輸入以下
指令 名稱 port 來源image docker run -d --name=MyFistApp -p 8081:80 samplecore:latest輸入資料 > Run 在瀏覽器中顯示 剛剛的步驟產生了許多image
藍色:IN USE的
紅色:可刪除
紫色:可留著重複使用
參考來源
[個人筆記] docker個人筆記
如何將 ASP.NET Core 2.1 網站部署到 Docker 容器中