如何设置主机的PHP解释器以指向容器的PHP解释器
我想配置PHPStorm,以便可以直接从IDE的终端运行Artisan命令。例如php artisan密钥:generate。但是,当我这样做时,我收到错误“php”不被识别为内部或外部命令 背景: 将Windows 10作为主机运行 使用Docker运行我的Web服务器Nginx和PHP解释器7.2-fpm。 我遵循了这个教程。 . 本教程没有介绍的一件事是如何设置我的远程PHP CLI解释器。为此,我遵循了这一点,并且可以成功地建立连接,因为它选择了正确的PHP版本7.2.21,如屏幕截图所示 在此之后,我重新启动了Windows10主机,启动了容器,打开了IDE,并试图从终端运行php-v,但再次出错 我知道这与我的PATH环境变量设置不正确有关,或者根本没有设置,但我不确定如何将其指向容器的PHP解释器。任何帮助都将不胜感激 编辑 值得一提的是,我知道我可以在容器中执行并从那里运行PHP命令,但我想我可以通过指向容器的解释器直接从主机执行如何设置主机的PHP解释器以指向容器的PHP解释器,php,docker,phpstorm,Php,Docker,Phpstorm,我想配置PHPStorm,以便可以直接从IDE的终端运行Artisan命令。例如php artisan密钥:generate。但是,当我这样做时,我收到错误“php”不被识别为内部或外部命令 背景: 将Windows 10作为主机运行 使用Docker运行我的Web服务器Nginx和PHP解释器7.2-fpm。 我遵循了这个教程。 . 本教程没有介绍的一件事是如何设置我的远程PHP CLI解释器。为此,我遵循了这一点,并且可以成功地建立连接,因为它选择了正确的PHP版本7.2.21,如屏幕截图
PHPstorm中的终端与计算机上的任何其他终端相同。它不会自动连接到docker以运行php-v命令。如果要在docker中从PHPstorm运行php,可以右键单击该文件: 选择运行: 并选择创建的docker解释器作为运行时: 如果修复按钮未显示,可通过以下方式进行配置:
settings > Languages & Frameworks > PHP
然后单击CLI解释器末尾的3个点我想PHP可执行文件引用需要从系统范围的PHP更新到容器PHP?尝试了PHP,它给了我4个位置:/usr/local/bin/PHP、/usr/local/etc/PHP、/usr/local/lib/PHP、/usr/local/PHP。尝试了每一个,并在两者之间重新启动IDE,但结果相同。我认为这是不可能的;容器内的php如何访问容器外的文件?方法与现在相同-通过卷装载。我的PHP文件位于本地主机上,容器中有一个挂载指向它们。您可能是对的,尽管这是不可能的,但文档使它听起来像是应该的。您可以使用docker exec运行它们。我要做的是创建一个别名:alias DockerHP=docker exec nameofcontainer php,然后运行DockerHP artisan。当我从PHPStorm的终端运行php-v时,它不应该使用我在CLI解释器部分中定义的解释器吗?我意识到这不适用于其他终端,如PowerShell。不,不应该,因为该终端与任何其他终端(如PowerShell)相同。您可以从PHPstorm配置Web服务器或运行程序以使用docker环境@waterloomatt@MaartenDev如何使用docker配置php cli在终端中工作?我的IDE是PHPStorm