Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何设置主机的PHP解释器以指向容器的PHP解释器_Php_Docker_Phpstorm - Fatal编程技术网

如何设置主机的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,以便可以直接从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命令,但我想我可以通过指向容器的解释器直接从主机执行


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