WSL安装的Ubuntu与docker desktop集成

WSL安装的Ubuntu与docker desktop集成

最近因为项目需要,要在本地利用WSL搭建一个docker和Ubuntu的部署环境。一开始并不知道docker desktop与Ubuntu可以集成使用,所以在Ubuntu上独立安装了docker引擎,但在安装docker-compose的时候出现以下提示:

 rightkk@DESKTOP-AN87946:~$ docker-compose

The command 'docker-compose' could not be found in this WSL 2 distro.

We recommend to activate the WSL integration in Docker Desktop settings.

For details about using Docker Desktop with WSL 2, visit:

https://docs.docker.com/go/wsl2/

意思是说WSL建议使用WSL集成Docker Desktop来使用docker引擎和安装docker-compose。

WSL集成Docker Desktop的方法

Windows上的Docker desktop WSL 2后端

Windows Subsystem for Linux (WSL) 2是由Microsoft构建的完整Linux内核,它允许Linux发行版在不管理虚拟机的情况下运行。通过在WSL 2上运行Docker Desktop,用户可以利用Linux工作空间,避免同时维护Linux和Windows构建脚本。此外,WSL 2还改进了文件系统共享和引导时间。

Docker Desktop使用WSL 2中的动态内存分配特性来改善资源消耗。这意味着Docker Desktop只使用所需的CPU和内存资源,同时允许CPU和内存密集型任务(如构建容器)运行得更快。

此外,使用WSL 2,在冷启动后启动Docker守护进程所需的时间要快得多。

先决条件

在你打开Docker桌面WSL 2特性之前,确保你有:

最低WSL版本1.1.3.0。,但最理想的是最新版本的WSL,以避免Docker桌面不能像预期的那样工作。

满足Docker Desktop for Windows的系统要求。

在Windows上安装WSL 2特性。有关详细说明,请参阅Microsoft文档。

为了获得更好的WSL体验,请考虑启用WSL autoMemoryReclaim设置,从WSL 1.3.10(实验性)开始。

这个特性增强了Windows主机在WSL虚拟机中回收未使用内存的能力,确保其他主机应用程序的内存可用性得到改善。这个功能对Docker Desktop特别有益,因为它可以防止WSL VM在Docker容器镜像构建期间在Linux内核的页面缓存中保留大量内存(以gb为单位),而不会在虚拟机中不再需要时将其释放回主机。

打开Docker桌面WSL 2

重要

为了避免在Docker Desktop上使用WSL 2的任何潜在冲突,在安装Docker Desktop之前,必须卸载通过Linux发行版直接安装的任何先前版本的Docker Engine和CLI。

1、下载并安装最新版本的Docker Desktop for Windows。

2、按照通常的安装说明安装Docker Desktop。根据您使用的Windows版本,Docker Desktop可能会在安装过程中提示您打开WSL 2。读取屏幕上显示的信息并打开WSL 2特性以继续。

3、从Windows开始菜单启动Docker Desktop。

4、导航到设置。

5、从General选项卡中,选择Use wsdl 2 based engine..

如果你在支持WSL 2的系统上安装了Docker Desktop,这个选项默认是打开的。

6、选择Apply & Restart。

现在docker命令使用新的wsl2引擎在Windows上工作。

在wsl2发行版中启用Docker支持

WSL 2为Windows增加了对“Linux发行版”的支持,每个发行版的行为就像一个VM,只是它们都运行在一个共享的Linux内核之上。

Docker Desktop不需要安装任何特定的Linux发行版。docker的CLI和UI都可以在Windows上正常工作,而不需要任何额外的Linux发行版。然而,为了获得最佳的开发体验,我们建议至少安装一个额外的发行版并启用Docker支持:

1、确保发行版在wsl2模式下运行。WSL可以以v1或v2模式运行发行版。

要查看WSL模式,请执行命令:

wsl.exe -l -v

要将Linux发行版升级到v2,执行命令:

wsl .exe --set-version 2

要将v2设置为将来安装的默认版本,请执行以下命令:

wsl.exe --set-default-version 2

2、启动Docker Desktop后,进入“设置>资源> WSL集成”。

Docker-WSL集成是在默认的WSL发行版(Ubuntu)上启用的。要更改默认的WSL发行版,请运行:

wsl --set-default

3、选择Apply & Restart。

Docker Desktop安装了两个专用的内部Linux发行版Docker - Desktop和Docker - Desktop -data。第一个(Docker -desktop)用于运行Docker引擎(dockerd),而第二个(Docker -desktop-data)用于存储容器和映像。两者都不能用于一般开发。

  • 17
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Docker Desktop 是一款用于运行和管理容器化应用的工具,而 Ubuntu 20.04 WSL 是 Windows 子系统的一种,可以在 Windows 上运行 Ubuntu Linux,让开发者可以在 Windows 环境中进行开发和测试。 在使用 Docker Desktop 时,可以与 Ubuntu 20.04 WSL 进行集成,以便在 Windows 环境下更方便地使用 Docker集成后,可以在 Ubuntu 20.04 WSL安装和运行 Docker Engine,与在常规的 Ubuntu 环境中没有太大的差别。 然而,有时可能会遇到"Distribution Ubuntu-20.04 unexpec"的错误。这通常是由于某些原因引起的不可预期的错误或问题。这可能是由于操作系统或软件的不稳定性、版本冲突、配置错误、网络问题等引起的。 要解决这个问题,有几个步骤可以尝试: 1. 检查 Docker DesktopUbuntu 20.04 WSL 的版本是否兼容,确保使用了最新的版本。 2. 检查系统和软件的配置是否正确,确保没有出现冲突或错误的设置。 3. 检查网络连接是否正常,确保能够访问互联网和 Docker 仓库。 4. 尝试重新安装或更新 Docker DesktopUbuntu 20.04 WSL,以修复可能的损坏或错误。 如果问题仍然存在,可以尝试搜索相关的错误信息或寻求帮助,以找到更具体的解决方法。同时,也可以尝试使用其他类似的工具或方法来满足容器化应用的需求。 ### 回答2: 当Docker DesktopUbuntu 20.04 WSL集成时出现异常,可能有几种可能原因和解决方法。 首先,确保你的Docker DesktopWSL都是最新版本,并且已经正确安装和配置。 如果你的Docker DesktopWSL版本不兼容,可能会导致集成过程中出现异常。请检查并更新它们。 其次,检查Docker Desktop的设置是否正确。进入Docker Desktop的设置菜单,确保“WSL Integration”选项已启用,并选择你要与WSL集成Ubuntu 20.04版本。 如果集成过程中仍然存在问题,可以尝试重新安装Docker DesktopWSL。首先卸载Docker DesktopWSL,然后重新安装它们。确保按照官方文档上的步骤进行操作。 另外,你还可以尝试重启计算机,有时候重启可以帮助解决一些集成问题。 如果以上方法仍然无法解决问题,建议查看Docker DesktopWSL的官方文档,寻找可能的故障排除方法或寻求技术支持。 总之,当Docker DesktopUbuntu 20.04 WSL集成过程中出现异常时,可以通过确保软件版本兼容、检查设置并重新安装软件来解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值