一、添加一個Dockerfile文件,將其移到解決方案文件夾,模板以下:sql
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build WORKDIR /app # copy csproj and restore as distinct layers COPY *.sln . COPY aspnetapp/*.csproj ./aspnetapp/ RUN dotnet restore # copy everything else and build app COPY aspnetapp/. ./aspnetapp/ WORKDIR /app/aspnetapp RUN dotnet publish -c Release -o out FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS runtime WORKDIR /app COPY --from=build /app/aspnetapp/out ./ ENTRYPOINT ["dotnet", "aspnetapp.dll"]
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS Build WORKDIR /app # copy csproj and restore as distinct layers COPY *.sln . COPY NetCore-Learn-LocalMsSql/*.csproj ./NetCore-Learn-LocalMsSql/ RUN dotnet restore # copy everything else and build app COPY NetCore-Learn-LocalMsSql/. ./NetCore-Learn-LocalMsSql/ WORKDIR /app/NetCore-Learn-LocalMsSql RUN dotnet publish -c Release -o out FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS runtime WORKDIR /app COPY --from=build /app/NetCore-Learn-LocalMsSql/out ./ ENTRYPOINT ["dotnet", "NetCore-Learn-LocalMsSql.dll"]
二、切換到解決方案文件夾,PS運行開始Build,注意須要小寫。docker
docker build -t netcore-learn-localmsql .
三、Docker Images查看鏡像建立狀況
app
四、指定端口,開始運行。ui
docker run -it -p 3000:80 --name netcorelearnlocalmssql netcorelearnlocalmssql:latest