社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

微软发布 Windows 原生 Linux 容器:告别 Docker Desktop?

小众软件 • 1 周前 • 67 次点击  

 

字数 841,阅读大约需 5 分钟

微软发布 WSL Container 公测版,将 Linux 容器集成到 WSL 中。

这意味着今后无需安装 Docker Desktop,就能直接在 Windows 上运行 Docker 镜像。@Appinn

对于在 Windows 上运行 Docker 镜像,对比如下:

以前
现在(WSL Container)
安装 WSL
安装 WSL
安装 Docker Desktop
更新到 WSL 预览版
启动 Docker Desktop 后台服务
无需 Docker Desktop
docker run -d -p 80:80 nginxwslc run -d -p 80:80 nginx

最大区别是不再需要安装 Docker Desktop,WSL 自带了 Linux 容器功能,只需要先升级 WSL:

wsl --update --pre-release

然后把老命令:

docker run -d -p 80:80 nginx

替换为:

wslc run -d -p 80:80 nginx

就可以了。

告别 Docker Desktop:微软发布 WSL 容器公测版,Windows 原生支持 Linux 容器 2

WSL 容器 CLI – wslc.exe

这次的 WSL 容器主要就是 wslc.exe,以前使用 docker 管理容器,现在可以直接使用 wslc。包括:

  • • 拉取镜像(Pull)
  • • 构建镜像(Build)
  • • 创建、启动容器(Run)
  • • 查看容器(List)
  • • 进入容器(Exec)
  • • 查看日志(Logs)
  • • 停止、删除容器(Stop / Remove)
  • • 调试、测试容器应用等

例子1: 启动一个 Ubuntu KDE 桌面容器

wslc run -d \
  --name
=webtop \
  -e
 PUID=1000 \
  -e
 PGID=1000 \
  -e
 TZ=Etc/UTC \
  -p
 3000:3000 \
  -p
 3001:3001 \
  lscr.io/linuxserver/webtransform: translateY(ubuntu-kde

Docker 用户对于里面的 linuxserver 很熟悉吧,非常知名的 Docker 镜像作者。这行命令的意思是:

从 lscr.io 拉取 linuxserver/webtop:ubuntu-kde 镜像,创建并后台运行一个容器,将宿主机 3000、3001 端口映射到容器,启动一个完整的 Ubuntu KDE 桌面,最终浏览器访问 http://localhost:3000 即可进入图形桌面

例子2:启动一个 PyTorch CUDA 容器

wslc run --rm --gpus all \
  pytorch/pytorch:2.5.1-cuda12.4-cudnn9-runtime \
  python -c "import torch; print(torch.cuda.is_available()); print(torch.cuda.get_device_name(0))"

作用是:

  • • 拉取官方 PyTorch CUDA 镜像(如果本地没有)
  • • 将宿主机 GPU 挂载到容器(--gpus all
  • • 在容器内执行一段 Python
  • • 输出:
    • • CUDA 是否可用
    • • GPU 名称(例如 RTX 3080)

执行完成后,容器会自动删除。这个例子主要是为了展示 GPU 直通能力

WSL 容器 API

除了 wslc.exe 外,微软还提供了 WSL 容器 API。它允许 Windows 应用直接创建、运行和管理 Linux 容器,无需调用命令行。

微软同时发布了支持 C、C++ 和 C# 的开发包,开发者可以将 Linux 容器直接集成到自己的 Windows 应用中。

告别 Docker Desktop:微软发布 WSL 容器公测版,Windows 原生支持 Linux 容器 3

例如,一款 Windows 图片处理软件需要使用已有的 Linux AI 图像处理程序。开发者可以通过 WSL 容器 API,在后台启动 Linux 容器运行这部分代码,而无需将其重新移植到 Windows。

也就是说,原本只能运行在 Linux 上的代码,现在可以直接嵌入 Windows 应用中。

此外,WSL 容器 API 还支持与 MSBuild 和 CMake 集成,只需在项目中添加少量配置,就可以把容器的构建、部署等步骤自动纳入编译流程,无需手动操作。

升级 WLS

现在就能升级:

告别 Docker Desktop:微软发布 WSL 容器公测版,Windows 原生支持 Linux 容器 4

但是感觉有点难 😭


原文:https://www.appinn.com/windows-wsl-container-public-preview/

 

微软是最佳 Linux 开发者,实锤了吧。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/198373