Docker 在 windows 10 with wsl2 上不受支持的操作系统

Unsupported operating system with Docker on windows 10 with wsl2

我安装了 docker 并使用 laravel sail 下载了一个 ubuntu 发行版到 运行,计划使用 swoole php,并将其设为默认,也将 wsl 版本设为 2

docker-compose.yml 准备从 laravel 航行 docker-compose.yml:

但每次我尝试 运行 sail up cmd 时,它都会给我这个错误“不支持的操作系统 [MINGW64_NT-10.0]。Laravel Sail 支持 macOS,Linux 和 Windows (WSL2)."

有什么解决办法吗?

您需要从您的 WSL2 Ubuntu 内部 运行 起航命令 Ubuntu 图片不是直接来自您的终端。一旦你这样做它应该工作正常

如果您使用的是 windows,请按照以下步骤操作。

  1. 确保ubuntu和WSL 2已安装,您可以按照说明进行操作here
  2. 成功安装 ubuntu 后,您的文件系统现在与 ubuntu 共享相同的文件系统,这意味着如果您想 运行 ubuntu 命令一个文件夹路径,你必须打开相应的终端。如果你使用的是Visual Studio代码,你可以select文件目录对应的ubuntu终端通过selecting ubuntu作为新终端,会打开当前路径上的 Ubuntu 终端。
  3. 你可以运行./vendor/bin/sail up。确保您正在 运行 从 Ubuntu 中的项目文件夹中执行命令。通常文件夹总是在 /mnt/c/users/path/to/project.
  4. 如果你看到 docker 而不是 运行ning。打开您的 docker 桌面,转到资源下的设置,select WSL 并启用与您的 ubuntu 的集成
  5. 重新启动您的终端,然后再次 运行 命令。别忘了你下面的 Ubuntu 文件系统通常在 /mnt/c/users/path-to-laravel-project 中。 您应该是第一次看到以下内容。请注意突出显示的文件夹路径。
  6. 最后一件事,为了在您的本地主机上访问您的 laravel 应用程序,您必须访问连接到 Ubuntu 的 WSL IP 地址。使用以下命令。 wsl hostname -i 它输出一个像 , Note! your IP address may be different. Navigate to the IP address on default port 80 and you should see.
  7. 这样的 IP 地址

祝你项目成功。享受吧!!