安装docker for windows,选择linux container运行docker(如果是windows contanier则没什么必要,IIS部署core显然更方便)。
发布程序,在发布的目录中创建dockerfile,
dockerfile代码:
#dockerfile
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
COPY . /app
EXPOSE 80
ENTRYPOINT ["dotnet", "BlazorApp20200105.dll"]
#
PS:第一行镜像原本用的是 FROM mcr.microsoft.com/dotnet/core/runtime:3.1,运行起来以后是不行的,docker log 查看显示缺少framework版本,查看文档后得知asp.net core的运行时镜像:
mcr.microsoft.com/dotnet/core/aspnet:3.1 ,而上一个是.net core的运行时。
powershell 进入到项目发布的文件根目录,进行docker build,创建镜像: docker build -t imagename . 成功后会返回镜像ID。
启动容器运行core项目且绑定外部端口8082到容器80端口:docker run --name xxx -d -p 8082:80 imagename 。