在创建Laravel Homestead VM(VAGRANT)时,有更好的方法来添加GRPC扩展?

在我的工作场所,我们已经开始使用Homestead来简化我们的落后发展。

Setup:

  • Macos Catalina,
  • Homestead v12.0.0.
  • settler v11.0.0(Ubuntu 20.04)

我们正在使用PHP7.4为我们的项目介于我的Homestead.yaml文件我的网站设置如下所示:

sites:
- map: site1.test
  to: /home/vagrant/projects/site1/public
  php: "7.4"
- map: site2.test
  to: /home/vagrant/projects/site2/public
  php: "7.4"

我们的项目需要使用GRPC扩展。从安装说明(https://grpc.io/docs/languages/php/quickstart/)似乎PECL用于安装GRPC扩展。所以在我的毕后脚本上我添加了以下部分:

sudo phpize
sudo pecl -d php_suffix="7.4" install grpc &&

sudo touch /etc/php/7.4/mods-available/grpc.ini &&
echo 'extension=grpc' | sudo tee /etc/php/7.4/mods-available/grpc.ini
sudo phpenmod -v 7.4 grpc

工作正常,但每次创建VM时,它会编译GRPC扩展,这需要一些时间。是否有更好的解决方案使过程更快?

对于Ubuntu,我找到了安装PHP和扩展的最简单方法是添加this repository在repos列表中(指示在许多地方时。)。您可以在脚本之后添加这些步骤。它比编译更快,但仍然不理想。理想的解决方案将是一个自定义Docker映像,这些步骤是Pre-RAN,但我不知道如何在当前设置中集成该步骤apokryfos
谢谢你的答案@apokryfos,我试图远离需要重大维护的任何东西。在外部回购之后,结合定期到宅基地的变化并不是理想的。我知道最好的想法是让自己的容器运行,但我的团队还没有习惯这种工作流程。 vagrant(它是一个VM而不是容器)是新的东西,所以一步一步:)。将快速检查您提出的Repo,检查PHP-GRPC的版本是否仍然兼容短期。Nick Chatzis

回答 0