Win11系统Docker部署Blazor程序

1. 开发环境

  • Windows 11 家庭版,默认支持WSL2

2. Docker安装

安装Docker Desktop需要启用Win11的Linux子系统和虚拟机。以管理员身份运行命令行程序,执行如下命令:

  • 启用适用于 Linux 的 Windows 子系统
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  • 启用虚拟机功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  • 下载 Linux 内核更新包
wsl --update

再下载Docker Desktop安装程序,直接安装,重启系统即可。

3. Blazor发布

  • 用VS工具右击项目发布,发布设置如下:
    • 目标框架:net8.0
    • 部署模式:框架依赖
    • 目标运行时:可移植
  • 在发布后文件夹中添加Dockerfile文件,文件内容如下:
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
#复制当前目录所有到文件夹YourBlazorApp
COPY . /YourBlazorApp
#工作目录
WORKDIR /YourBlazorApp
#暴露端口
EXPOSE 8080
EXPOSE 8081
#入口点
ENTRYPOINT ["dotnet", "YourBlazorApp.dll"]
  • 构建Docker镜像
#docker build -t <镜像名称> .
docker build -t your-blazor-app .
  • 运行Docker容器
#-p      宿主机端口:容器端口
#--name  容器名 镜像名
docker run -d -p 8080:80 --name blazor-app your-blazor-app
  • 导出镜像
#docker save -o <输出文件路径> <镜像名称>:<标签>
docker save -o myimage_v1.tar myimage:v1
  • 导入镜像
#docker load -i <镜像文件路径>
docker load -i myimage_v1.tar
posted @ 2024-08-01 13:22  known  阅读(100)  评论(0编辑  收藏  举报