使用 wsl2 的 Windows 10 上的 Docker 操作系统不受支持

Ahm*_*aey 7 docker laravel-sail

我安装了docker并下载了一个ubuntu发行版来与laravel sail一起运行,计划使用swoole php,并将其设置为默认,还将wsl版本设置为2 在此输入图像描述

从 laravel sail docker-compose.yml 中准备好 docker-compose.yml: 在此输入图像描述

但每次我尝试运行 sail up cmd 时,都会出现此错误“不支持的操作系统 [MINGW64_NT-10.0]。Laravel Sail 支持 macOS、Linux 和 Windows (WSL2)。”

在此输入图像描述

任何想法如何解决这一问题 ?

Emm*_*iji 19

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

  1. 确保已安装 ubuntu 和 WSL 2,您可以按照此处的说明进行操作
  2. 成功安装 ubuntu 后,您的文件系统现在与您的 ubuntu 共享相同的文件系统,这意味着如果您想在文件夹路径上运行 ubuntu 命令,您必须打开相应的终端。如果您使用的是 Visual Studio Code,则可以通过选择 ubuntu 作为新终端来为文件目录选择相应的 ubuntu 终端,它将在当前路径上打开 Ubuntu 终端。
  3. 你可以跑./vendor/bin/sail up。确保您正在 Ubuntu 中的项目文件夹中运行该命令。通常该文件夹始终位于/mnt/c/users/path/to/project.
  4. 如果您看到 docker 没有运行。打开 Docker 桌面,转到设置,在资源下选择 WSL 并启用与 ubuntu 的集成 将 WSL ubuntu 与 docker 集成
  5. 重新启动终端,然后再次运行该命令。不要忘记你的 Ubuntu 文件系统,通常是/mnt/c/users/path-to-laravel-project. 您应该是第一次看到以下内容。请注意突出显示的文件夹路径。Laravel Sail 第一次运行
  6. 最后一件事,为了访问本地主机上的 laravel 应用程序,您必须访问连接到 Ubuntu 的 WSL IP 地址。使用以下命令。wsl hostname -i它输出一个IP地址,例如在此输入图像描述, 笔记!您的 IP 地址可能不同。导航到默认端口 80 上的 IP 地址,您应该会看到。Laravel Sail 运行成功

祝您项目成功。享受!!


小智 10

您需要从 WSL2 Ubuntu 映像内部运行 sail up 命令,而不是直接从终端运行。一旦你这样做了,它应该可以正常工作

  • 你必须 `cd /mnt/c/path/to/laravel` @AhmedWagihRefaey (2认同)