联系电话:0411-66373325
联系地址:大连市沙河口区富民广场
公司邮箱:2058793689@qq.com
备案信息:Copyright © 2016-2025,www.my249.com,All rights reserved
|
249建站之家:在win8下用vagrant和docker构建LNMP环境一个成熟的PHP研发团队,一定拥有强大的开发环境构建能力,工欲善其事必先利其器。 今天就和大家聊一聊,我们PHP研发是如何打造轻量级的研发环境构建能力的。 首我们的构建环境能力需要满足这些要求: 1)一键启动/关闭/重启/初始化项目开发环境。 2)完全一致的环境复制和迁移能力。 3)一切即代码,超轻量级的环境定义能力。 如何做到一键构建环境呢? 首先,我们每天的是这样开始的: 开机,双击job.bat,然后等待片刻,LNMP环境启动ok。 -> 整个环境目录如下: vagrant - vagrantfile - lnmp - app - hello - mysql - data - sql - my.cnf - Dockerfile - nginx - nginx.conf - conf.d hello.conf - php - php.ini - Dockerfile -> 环境准备: win8操作系统 git vagrant 1.9.1 virtualbox 5.1.14 docker 17.04.0.ce docker-compose 1.13.0 -> 环境搭建过程: 1 win上安装vagrant,virtualbox,git 2 从git仓库获取环境配置定义文件和项目代码, 包括Vagrantfile, dockerfile, docker-compose.yml,appcode 3 下载vagrant.box(可以是官网初始的linux box, 也可以是经过环境初始化的box) 4 vagrant up 启动Linux虚拟环境 5 linux 下安装git, docker, docker-compose(如果是经过初始化的box,这些应该都已经配置好了) 6 进入项目目录(该目录是挂载和同步的win下的git项目目录,也就是说项目代码和环境定义文件已经存在了) 7 docker-compose up -d 启动lnmp环境(如果一切顺利的话,环境就启动ok了) 8 配置hosts,如www.hello.in,访问项目应用。 你会发现,整个过程除了安装几个软件外,几乎不需要配置什么,包括nginx.conf php.ini 等等 -> 查看环境运行状况: 1 vagrant global-status 2 docker-compose ps -> 轻量级的环境定义能力 1 git仓库(是的你只要告诉另一个新伙伴你们的环境仓库就ok了) Vagrantfile Dockerfile docker-compose.yml my.cnf nginx.conf php.ini appcode(建议环境仓库和项目仓库分开) 2 vagrant.box (由于官网的box下载更新太慢,所以你应该预先准备好) 3 php/nginx/mysql docker image (当然,这个如果你用阿里云的镜像库的话,速度还是可以的) -> 完全一致的环境复制能力 这里你会发现,开发/测试/预发,我们完全可以通过这种方式去方便的构建, 当然,如果你对docker具备一定的运行维护能力,完全可以在【线上】如此构建, 但是,很多时候,我们线上生产环境是以集群出现的,这里就会用到【容器编排引擎】了。 -> 版本升级,增改模块,扩展等等 当我们需要进行软件版本升级,如nginx/php/mysql等等, 当我们需要增改模块,扩展时,怎么操作呢? 这时我们只需要去维护和更新我们的环境定义配置文件即可,如,vagrantfile,dockerfile 其他小伙伴只需要更新这些文件,按照初始方式重建环境即可。 ok,今天就聊这么多,如果你有更好的选择和建议,欢迎拍砖和探讨。 |