1. 開發(fā)環(huán)境
- Windows 11 家庭版,默認(rèn)支持WSL2
2. Docker安裝
安裝Docker Desktop需要啟用Win11的Linux子系統(tǒng)和虛擬機(jī)贺归。以管理員身份運(yùn)行命令行程序,執(zhí)行如下命令:
- 啟用適用于 Linux 的 Windows 子系統(tǒng)
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
- 啟用虛擬機(jī)功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- 下載 Linux 內(nèi)核更新包
wsl --update
再下載Docker Desktop安裝程序,直接安裝,重啟系統(tǒng)即可账劲。
3. Blazor發(fā)布
- 用VS工具右擊項(xiàng)目發(fā)布,發(fā)布設(shè)置如下:
- 目標(biāo)框架:net8.0
- 部署模式:框架依賴
- 目標(biāo)運(yùn)行時(shí):可移植
- 在發(fā)布后文件夾中添加Dockerfile文件,文件內(nèi)容如下:
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
#復(fù)制當(dāng)前目錄所有到文件夾YourBlazorApp
COPY . /YourBlazorApp
#工作目錄
WORKDIR /YourBlazorApp
#暴露端口
EXPOSE 8080
EXPOSE 8081
#入口點(diǎn)
ENTRYPOINT ["dotnet", "YourBlazorApp.dll"]
- 構(gòu)建Docker鏡像
#docker build -t <鏡像名稱> .
docker build -t your-blazor-app .
- 運(yùn)行Docker容器
#-p 宿主機(jī)端口:容器端口
#--name 容器名 鏡像名
docker run -d -p 8080:80 --name blazor-app your-blazor-app
- 導(dǎo)出鏡像
#docker save -o <輸出文件路徑> <鏡像名稱>:<標(biāo)簽>
docker save -o myimage_v1.tar myimage:v1
- 導(dǎo)入鏡像
#docker load -i <鏡像文件路徑>
docker load -i myimage_v1.tar