适用于 Linux 2 的 Windows 子系统是 Windows 10 和 11 上的非凡工具 , 并与 Docker 无缝集成 。作为开发人员 , 了解这些软件提供的功能以及如何充分利用 Docker-WSL 2 设置至关重要 。
什么是码头工人?Docker 是一个开源平台 , 允许开发人员在容器中高效地构建、部署和运行他们的应用程序 。所有依赖项都捆绑在一起 , 因此您的项目可以轻松部署在任何环境中 。
Docker 在许多容器化平台中非常受欢迎 , 因为它可靠、功能强大且可扩展性强 。它在 Docker 引擎上运行 , Docker 引擎是一个必不可少的 DevOps 工具 , 可为测试和部署提供干净、轻量级的环境 。Docker 类似于虚拟机 , 但虚拟化操作系统而不是底层硬件 。
对于软件开发人员 , Docker 通过为不同的微服务创建单独的容器(包括必要的依赖项、库和配置)来简化工作流程 。每个微服务容器都是隔离的并且可以单独扩展 。
如何在 WSL 2 上使用 Docker
Docker 与所有主要操作系统兼容 , 例如 Windows、macOS 和 Linux 。如果您使用的是 Windows 10 或 11 , 则可以通过 Docker Desktop 使用 Docker , 并将其与适用于 Linux 2 的 Windows 子系统集成以提高性能 。您可以从Docker 官方网站下载适用于 Windows 的 Docker Desktop。

文章插图
适用于 Linux 的 Windows 子系统 (WSL) 是一项很有价值的功能 , 它允许 Windows 用户运行 Ubuntu 和 Kali 等 Linux 发行版 , 而无需设置虚拟机或双启动 。
这也意味着Windows 用户可以直接使用 Linux 命令行工具、应用程序和实用程序 , 而无需额外的安装步骤 。WSL 的最新版本 WSL 2 提供了更高的稳定性和专用的 Linux 内核 。
由于 Docker 容器非常健壮 , 您甚至可以配置它们来托管您的服务器;nginx docker 容器通常用作 Web 服务器 。此外 , 您还可以通过其他几种方式使用 Docker:
- 轻松运行 Linux 发行版
- 设置用于学习或测试目的的网络服务器
- 便携式部署应用程序
- 将应用程序捆绑到一个图像文件中
- 简化的 CI/CD 管道
1. 将 VS Code 与 WSL 2 集成Visual Studio Code 是一种流行的 IDE , 因其令人难以置信的功能、社区和扩展而深受喜爱 。作为开发人员 , 能够在 Windows 平台上使用 Visual Studio Code 进行应用程序开发 , 同时还能在 Linux 内核上运行这些应用程序 , 这是一项非常有利且几乎令人难以置信的功能 。

文章插图
当你将 VS Code 集成到 Linux 的 Windows 子系统中时 , 你可以利用其专门的 Linux 内核来增强跨平台兼容性 。您可以通过使用 VS Code 和 WSL 2 中的集成终端进一步简化您的工作流程 。
要在 Windows 上使用 WSL 2 设置 VS Code , 您可以从 VS Code Marketplace 配置WSL扩展并开始运行 。
2. 使用 WSL 2 文件系统要正确运行 Docker 容器 , 您必须依赖 WSL 2 发行版的文件系统 , 而不是严重依赖本机 Windows 文件系统 。纵观我在 WSL 2 上使用 Docker 容器的经验 , 我发现最好将项目文件存储在 WSL 中 。
3. 使用原生 Linux 脚本【改善Windows上WSL 2 Docker体验的6个技巧】您将从事的许多容器化项目可能会附带用于在 Linux 上实现自动化的脚本 。通常 , 这些脚本首先是为 Linux 开发的 , Windows 开发人员不是优先考虑的对象 。
借助 WSL 2 , 您的整个团队都可以使用相同的 Linux 自动化脚本 , 并且您不必担心为您的团队维护与 Windows 兼容的自动化脚本 。
4. 配置 BuildKit 以提高安全性和性能BuildKit 是一个开源工具包 , 在性能和安全性方面改进了传统的 Docker 构建过程;它直接与 Docker 集成 , 因此您无需单独安装 。
当您默认启用BuildKit时 , 您可以确保您的容器是使用 BuildKit 工具包构建的 , 从而为您提供更好的安全性、并发性、灵活性和缓存 。
要默认启用 BuildKit , 您应该对 ~/.profile 配置文件进行以下更改:
export DOCKER_BUILDKIT=1.5.设置资源限制当您将 WSL 2 后端与 Docker Desktop 集成时 , 您授予 Docker 访问所有 CPU 资源的权限 。这样做有助于提高资源密集型容器的性能 。但是 , 在某些情况下 , 容器可能会分配大量多余的内存 , 从而导致关键操作系统进程崩溃 。在使用数据库容器或缓存微服务时 , 您更有可能遇到这种情况 。
幸运的是 , 您可以配置 Docker 容器来限制系统内存和 CPU 使用率 。在配置系统内存时应始终小心 , 即使是一个小错误也会造成严重后果 。您可以参考Docker 官方文档 , 了解有关限制 Docker 容器消耗的内存和 CPU 资源的更详细指南 。
6.恢复缓存内存如果您在 WSL 2 中运行 Docker 容器 , 则容器终止后应释放其内存 。不幸的是 , 操作系统内核倾向于在缓存中维护数据 。这意味着 WSL 2 回收的有效内存是不够的 。
您可以通过在 WSL 2 中通过 root 运行以下命令来恢复所有不必要地用作缓存的内存:
echo 1 > /proc/sys/vm/drop_caches使用 WSL 2 变得更聪明WSL 2 是基于 Windows 的开发人员的最佳功能 , 它彻底改变了开发人员使用 Docker 的方式 。开发人员必须了解将 Docker 与 WSL 结合使用以提高性能、安全性和工作流灵活性的最佳实践 。- 如何阻止Edge在Windows11上始终在后台运行?
- 如何进入和退出Windows终端的焦点模式
- 荣耀换屏幕总成后指纹没有了
- ac米兰主场球票
- 东莞本地户籍读民办学校补贴
- 曼联吧6小时
- 如何修复Steam上的损坏磁盘错误,方案详解
- 如何解决Win11上OneDrive的0x8004def5错误
- 但应该 您可能不会使用的7个Windows11功能
