使用Vagrant和VirtualBox来构建Apache+PHP开发环境

记录构建流程。
省略安装vagrant和virtualbox。

我将在CentOS 6.5上创建一个Web服务器环境,其中包括Apache作为Web服务器,以及PHP作为编程语言。

1).获取盒子

准备工作目录。

$ mkdir vagrant
$ cd vagrant

从Vagrantbox.es上选择您喜欢的操作系统,并添加到box中。这次我选择了”CentOS 6.5 x86_64″。

$ vagrant box add centos65x86_64 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box

...
Successfully added box 'centos65x86_64' with provider 'virtualbox'!

确认盒子。刚才添加的东西已经被加入了。

$ vagrant box list
centos65x86_64 (virtualbox)

2) 创建Vagrantfile

用以下的命令进行初始化

$ mkdir centos65x86_64
$ cd centos65x86_64
$ vagrant init centos65x86_64

执行后将创建一个”Vagrantfile”。此次我们将不做任何修改而直接使用。

3) 创建虚拟机

用以下指令创建虚拟机。

$ vagrant up

完成命令后,请确认一下。

$ vagrant status

以VM登录

通过SSH登录

$ vagrant ssh
$ cat /etc/redhat-release 
CentOS release 6.5 (Final)

5) 安装Apache和PHP

首先,执行 yum update 的操作。

$ sudo yum update

接下来是 Apache+PHP。

$ sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
$ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

$ sudo yum install --enablerepo=remi --enablerepo=remi-php55 php

确认PHP版本

$ php -v
PHP 5.5.20 (cli) (built: Dec 17 2014 15:09:12)

开启apache。将iptables禁用。

$ sudo service httpd start
$ sudo chkconfig httpd on

$ sudo service iptables stop
$ sudo chkconfig iptables off

6). 更改 Vagrantfile 的配置

为了确保从主机能够访问虚拟机内的Apache,需要修改Vagrantfile文件中的以下部分。

config.vm.network :private_network, ip: "192.168.33.10"

将设置更改应用

$ vagrant reload

使用 IP 地址指定从浏览器访问。
在虚拟机中监视访问日志并进行确认。

$ sudo tail -f /var/log/httpd/access_log

如果能够显示Apache的测试页面,那就没问题。