Docker化现有的zend Web应用程序项目

时间:2018-01-25 00:10:21

标签: php mysql docker zend-framework

我有一个基于Web的应用程序,使用在LAMPP服务器上运行的Zend框架和我想要Dockerize的MYSQL。基本上,我想做以下事情:

  • 创建一个docker文件,该文件将成为我的Web应用程序的docker容器
  • 能够将配置传递给此docker文件,以便我可以为我的本地代码库构建docker镜像,也可以从master分支构建。

有关如何开始的任何建议?

1 个答案:

答案 0 :(得分:0)

作为一般的最佳实践,您应该在每个容器中只有一个服务 - 守护程序。所以在你的情况下,当你有apache和mysql时,你应该考虑两个容器。要同时运行它们,您可以将简单的bash脚本放在一起,或者查看docker-compose。

apache容器的Dockerfile要么将一个卷映射到磁盘上的“实时”代码,要么包含内部代码。要执行前者,您将使用Dockerfile中的VOLUME声明,然后在运行它时使用“-v”参数(或者在docker-compose.yml中使用“volumes”声明)。要执行后者,您可以使用Dockerfile中的ADD指令。

现在如果你想在这两者之间进行某种切换,我建议你创建三个Dockerfiles,比如Dockerfile.parent,Dockerfile.app,Dockerfile.live - 其中:

  • 父级包含所有依赖项
  • 另外两个使用“FROM parent”
  • app使用ADD指令,因此包含
  • 中的代码
  • live使用音量