Win11系统Docker部署Blazor程序

1. 开发环境

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

2. Docker安装

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

  • 启用适用于 Linux 的 Windows 子系统
bash 复制代码
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  • 启用虚拟机功能
bash 复制代码
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  • 下载 Linux 内核更新包
bash 复制代码
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镜像

bash 复制代码
#docker build -t <镜像名称> .
docker build -t your-blazor-app .
  • 运行Docker容器
bash 复制代码
#-p      宿主机端口:容器端口
#--name  容器名 镜像名
docker run -d -p 8080:80 --name blazor-app your-blazor-app
  • 导出镜像
bash 复制代码
#docker save -o <输出文件路径> <镜像名称>:<标签>
docker save -o myimage_v1.tar myimage:v1
  • 导入镜像
bash 复制代码
#docker load -i <镜像文件路径>
docker load -i myimage_v1.tar
相关推荐
yyuuuzz7 分钟前
国际云服务商使用的常见问题分析
运维·服务器·网络·云计算·github·aws
minji...12 分钟前
Linux 网络基础(五)守护进程化,前后台进程组,作业,会话,setsid(),daemon(),端口号频繁更换问题
linux·运维·服务器·网络·c++·tcp/ip
剑神一笑12 分钟前
Linux du 命令深度解析:从磁盘占用统计到目录空间分析
linux·运维·前端
AOwhisky12 分钟前
Docker 学习笔记:从生态系统到镜像构建
linux·运维·笔记·学习·docker·容器
江湖有缘17 分钟前
Docker部署PortNote端口自动检测工具
运维·docker·容器
馨谙18 分钟前
云原生 Kubernetes 核心概念与组件详解
云原生·容器·kubernetes
lifewange20 分钟前
VMware如何安装并配置CentOs镜像
linux·运维·centos
七七powerful22 分钟前
AI+运维提效,ssl-cert-monitoring(SSL证书监控系统)2.0修复bug及新增功能说明
运维·服务器·ssl
j_xxx404_26 分钟前
【Linux进程间通信】硬核剖析:消息队列、信号量、内核IPC资源统一管理与mmap加餐
linux·运维·开发语言·c++·人工智能·ai
云达闲人27 分钟前
搭建DevOps企业级仿真实验环境:011Kubernetes 核心架构与组件
运维·kubernetes·devops·k8s 核心架构·k8s 组件解析·devops 实验环境·proxmox 虚拟化