有没有一种方法可以在您的机器上安装 laravel 9 而无需在您的机器上安装 php 8?

Is there a way to install laravel 9 on your machine with out having php 8 on your machine?

我尝试使用 Composer 创建 larvel 9 项目。因为我的机器上没有安装 php 8。当 运行 命令 composer create-project laravel/laravel --prefer-dist myapp 时,会创建一个 laravel 8 项目。

虽然 运行 composer create-project laravel/laravel:^9.0 --prefer-dist myapp 它给我错误 Could not find package laravel/laravel with version ^9.0 in a version installable using your PHP version, PHP extensions and Composer version. .

所以,我的问题是,我不想在我的机器上安装 php8,而是想使用 docker 创建一个 laravel 9 项目,但我似乎迷路了它。

我确实尝试使用以下命令创建项目:

composer create-project laravel/laravel=9.* --ignore-platform-req your-project-name --prefer-dist

它给我和上面一样的错误Could not find package laravel/laravel with version ^9.0 in a version installable using your PHP version, PHP extensions and Composer version.

您可以创建一个已安装 PHP 的 docker 容器并将其映射到您的本地驱动器:

docker run -it --rm -v $(pwd):/work -w /work php:alpine3.14

在 bash 中有效。如果您在 windows 中,请将 $(pwd) 位替换为您要在其中创建项目的目录。

这应该会为您提供一个 shell,让您可以使用 php 而无需在您的计算机上安装它。你可以在那里尝试你的项目初始化,它会在你的本地驱动器上创建文件。您可以通过键入 ctrl+d 或键入 exit.

退出

如果这张图片没有你想要的,你可以试试这张:

docker run -it --rm -v $(pwd):/work -w /work composer

其中已经安装了 composer。

要获得完整的 运行,请注意文件所有权并向作曲家提供正确的说明,您需要 运行 这个:

docker run -it --rm -v $(pwd):/work -w /work -u 1000:1000 composer:latest create-project laravel/laravel=9.* --ignore-platform-reqs --no-scripts /work