如何使用 docker-compose 在 docker 容器中为 Laravel 环境安装 Behat?
Posted
技术标签:
【中文标题】如何使用 docker-compose 在 docker 容器中为 Laravel 环境安装 Behat?【英文标题】:How to install Behat in docker container for Laravel environment using docker-compose? 【发布时间】:2016-10-27 21:59:36 【问题描述】:我有一个带有 laravel 环境的 docker 容器,我需要在里面安装 Behat 以运行功能,我需要运行 phpunit 测试。
有什么建议吗?
更新:
我有这个环境 Dockervel : http://www.spiralout.eu/2015/12/dockervel-laravel-development.html
我必须做一些在 Behat 中完成的 BDD 应用程序,而且我还需要做一些单元测试。我必须通过 Docker 映像交付这个应用程序。
我已经在 dockervel 中编写了应用程序,它非常简单,但仍然需要添加 behat 并制作 Dockerfile 以便我可以制作图像。
【问题讨论】:
你是如何在容器中挂载你的 laravel 应用程序的? 【参考方案1】:在您的应用程序代码容器中运行 composer install behat/behat
并像运行任何其他 php / laravel 包一样运行命令。
我不认为仅仅为了测试 / behat / phpunit 添加一个单独的容器真的比将它们都放在同一个容器中更好。
另一方面,在某些情况下,将 NodeJS 和 npm 放在一个单独的容器中会是一个明智的选择。
【讨论】:
我已经更新了 mz 问题。您认为,当我提供上述 docker 映像时,您的解决方案将确保使用此映像的那个可以运行 behat,或者我应该推荐他们这样做 ** 在您的应用程序代码容器中运行 composer install behat/behat 和像任何其他 php / laravel 包一样运行命令。 ** 为了运行 behat ? Behat 只是 PHP 的一个包,仅此而已。我不认为拥有多个带有composer的php容器真的是一个聪明的主意,只是为了运行每个php包。也许你想多了。您和您的团队将更容易为所有 php 和 laravel 包使用相同的容器。我想不出在不同的容器(或任何其他 php 包)上会有什么帮助以及如何帮助你的情况。 谢谢,它让我明白了很多事情,我显然想多了!以上是关于如何使用 docker-compose 在 docker 容器中为 Laravel 环境安装 Behat?的主要内容,如果未能解决你的问题,请参考以下文章