基于Docker的PHP开发环境
基于Docker的php开发环境
现在很多开发者都使用Vagrant来管理他们的虚拟机开发环境,Vagrant确切很酷,不过也有很多缺点(最主要的是它占用太多的资源)。在容器技术、Docker和更多类Docker技术出现后,解决这个问题就变得简单了。
免责声明
由于boot2docker的工作方式,本文所述的方法在你的环境中可能没法正常运行。如果需要在非Linux环境下同享文件夹到Docker容器,还需要注意更多额外的细节。后续我会写篇文章专门来介绍实际遇到的问题。
怎样才算是好的开发环境
首先,我们得知道甚么才是好的开发环境,对我而言,一个好的开发环境需要具有以下几个特点:可随便使用。我必须可以随便删除和创建新的环境。快速启动。我想要用它工作时候,它立马就能用。易于更新。在我们行业中,事物发展变化非常快,必须能让我很容易将我的开发环境更新到新的软件版本。
而Docker都支持以上这些特点,乃至更多。你几近可以即时烧毁和重建容器,而更新环境只需要重建你当前使用的镜像便可。
什么是php开发环境
目前Web运用扑朔迷离,php开发环境需要很多的东西,为了保证环境的简单性,需要做各种各样的限制。我们这次使用Nginx、PHP5-FPM、MySQL来运行Synmfony项目。由于在容器中运行命令行会更复杂,所以这方面的内容我会放到下一篇博客中再说。
Pet与Cattle
另一个我们要讨论的重点是:我们要把开发环境部署在多容器还是单容器中。两种方式各有优点:单容器易于分发、保护。由于它们是独立的,所有的东西都运行在同一个容器中,这点就像是一个虚拟机。但这也意味着,当你要升级其中的某样东西(比如PHP新版本)的时候,需要重新构建全部容器。多容器可以在添加组件时提供更好的模块化。由于每一个容器包括了堆栈的一部分:Web、PHP、MySQL等,这样可以单独扩大每一个服务或添加服务,并且不需要重建所有的东西。
由于我比较懒,加上我需要在我的笔记本上放点别的内容,所以,这里我们只介绍单个容器的方法。
初始化工程
首先要做的是初始化一个新的Symfony工程。推荐的方法是用
北京哪家白癜风医院便宜点根治白癜风什么方法好版权所有:Copyright ? 2012-12-20 php发展_php应用_php开发

电话:
当前时间: