使用PHP在停靠的应用程序上实现Git钩子的最佳实践

使用PHP在停靠的应用程序上实现Git钩子的最佳实践,php,docker,continuous-integration,githooks,Php,Docker,Continuous Integration,Githooks,我是Docker的新手,刚刚将我的PHP应用程序对接 在本地计算机上,当我推送所有新提交时,我在预推送钩子上使用PHPUnit运行一些测试 在docker环境中实现这个钩子的最佳实践是什么 我考虑了copule选项 备选案文1: 创建一个链接到PHP容器的“App”容器,并且只通过它提交代码 此选项的缺点是,我只需使用容器终端处理提交,这可能会非常烦人和受限 备选案文2: 在钩子脚本中使用PHP容器上的docker exec语法 这种情况下的最佳做法是什么?我选择选项2。将您的存储库和git钩子

我是Docker的新手,刚刚将我的PHP应用程序对接

在本地计算机上,当我推送所有新提交时,我在预推送钩子上使用PHPUnit运行一些测试

在docker环境中实现这个钩子的最佳实践是什么

我考虑了copule选项

备选案文1: 创建一个链接到PHP容器的“App”容器,并且只通过它提交代码

此选项的缺点是,我只需使用容器终端处理提交,这可能会非常烦人和受限

备选案文2: 在钩子脚本中使用PHP容器上的
docker exec
语法


这种情况下的最佳做法是什么?

我选择选项2。将您的存储库和git钩子明显地保留在主机系统上,或者在您的开发容器中执行单元测试,或者,当您的分发过程变得更加复杂时(生成/发布API文档、单元测试、集成测试、代码分析等),创建一个专用的发布映像;专用映像的优点是,您的提交钩子不依赖于正在运行的容器或其他任何东西,只运行它需要运行的任何东西;