在Docker容器中运行PHPUnit并启动它所依赖的容器
背景
一个在Docker容器中运行的php应用程序。 用docker-compose,这个容器和一个postgres数据库容器以及许多其他容器一起运行。
试图在phpstorm中运行我的phpunit测试,我创建了一个运行PHP应用程序容器的Docker Remote Interpreter测试配置 。
问题
容器抱怨它不能连接到数据库,当然这个数据库并没有启动,因为它在docker-compose.yml
配置了,并且没有与PhpStorm使用的单个容器一起启动。
试图解决
- PHP远程调试可以使用部署 ,所以我试图创建一个使用
docker-compose.yml
(因此启动所有容器)的Docker部署配置 ,并在PHPUnit启动之前启动,但我无法选择此部署 。 - 启动Docker Compose容器,除了PHP应用程序的容器,并连接到它。 这证明是困难的,因为他们在不同的网络,所以php应用程序容器仍然抱怨没有找到数据库。 我无法配置容器在PhpStorm中使用哪个网络。
TL;博士
我的PhpStorm项目是一个PHP应用程序。 这个应用程序可以在通过nginx服务的Docker容器中运行。 我可以使用运行配置在容器中运行我的PHPUnit测试,但是也需要其他容器不能自动启动。
题
我如何使用PHPStorm在PHP应用程序容器中运行PHPUnit测试以及它所依赖的容器(已经在docker-compose.yml
中进行了描述)?