最佳实践
始终使用最新版本的 WSL。您至少必须使用 WSL 版本 1.1.3.0,否则 Docker Desktop 可能无法按预期工作。测试、开发和文档基于最新的内核版本。旧版本的 WSL 可能会导致:
- Docker Desktop 定期或升级时挂起
- 通过 SCCM 部署失败
- 消耗
vmmem.exe
所有内存 - 网络过滤策略应用于全局,而不是特定对象
- 容器的 GPU 故障
为了在绑定安装文件时充分利用文件系统性能,建议您将绑定安装的源代码和其他数据存储到 Linux 容器中。例如,
docker run -v <host-path>:<container-path>
在Linux文件系统中使用,而不是在Windows文件系统中使用。您也可以参考 微软的建议。- 如果原始文件存储在 Linux 文件系统中,Linux 容器仅接收文件更改事件,即“inotify 事件”。例如,某些 Web 开发工作流程依赖 inotify 事件在文件更改时自动重新加载。
- 当文件从 Linux 文件系统绑定安装而不是从 Windows 主机远程安装时,性能要高得多。因此,请避免从 Windows
docker run -v /mnt/c/users:/users,
安装/mnt/c
。 docker run -v ~/my-project:/sources <my-image>
相反,从 Linux shell 使用类似where 的命令,~
Linux shell 将其扩展为$HOME
.
如果您对 docker-desktop-data VHDX 的大小有疑问,或者需要更改它,请查看 Windows 中内置的 WSL 工具。
如果您担心 CPU 或内存使用情况,可以配置分配给 WSL 2 实用程序 VM 的内存、CPU 和交换大小的限制。