Vagrant, Docker 扫盲

Vagrant

Vagrant 可以让你使用单一的配置信息来部署一套虚拟环境,
最后打包为一个所谓的 box (就是已经部署好环境的虚拟机器).
你可以手动来安装和配置 box, 也可以使用自动部署工具

自动部署工具可以让你快速部署一套一模一样的环境,
避免了一大堆的手动的命令输入,
并且允许你随时删除和重建一个全新的 box,
虚拟机的管理变得更加简单.

Vagrant 还可以在虚拟机和主机上分享文件夹,
意味着你可以在主机里面编辑代码, 然后在虚拟机里面运行.

Docker

一个轻量级的虚拟化解决方案
通常情况下,一个 LAMP 应用汇包含以下三个容器:

  • Web 服务器,
  • PHP-FPM 线程
  • MySQL

在 Vagrant 的共享文件夹中,你不需要改变你应用文件路径,
你只需要告诉 Docker 到哪里可以找到他们即可。

你可以通过命令行来生成容器,
或者,为了更好的维护,为你的项目构建一个 docker-compose.yml 文件来配置生成容器的规则和容器的通讯规则。

Docker 在多网站要求不同运行环境的情况下尤其趁手,
你可以在一台机器上运行多个 Docker 虚拟主机
他们将会运行在完全不同的环境中,
使用不同的 Web 服务,
并且不管在内存共享、硬盘空间、或者是 CPU 资源上,
都能做到高效利用。
这些虚拟机同时也指出秒寄重启。