使用 Vagrant 搭建本地开发环境教程(2)

配置好网络以后,第一次启动,会出现上面这样的提示,让我们选择桥接的方式,选择哪个要看你的网络环境。比如我的电脑是在一个小型的局域网里,通过一个无线的路由器上网,所以这里,我选择第一个选项:en1:Wi-Fi(Airport)。输入数字 1,然后按下回车。

==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat default: Adapter 2: bridged ==> default: Forwarding ports... default: 22 => 2200 (adapter 1) ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2200 default: SSH username: vagrant default: SSH auth method: private key default: Warning: Connection timeout. Retrying... default: Warning: Remote connection disconnect. Retrying... ==> default: Machine booted and ready! ==> default: Checking for guest additions in VM... ==> default: Configuring and enabling network interfaces... ==> default: Mounting shared folders... default: /vagrant => /Users/xiaoxue/Desktop/linuxidc.net ssh

启动以后,我们就可以 ssh 到虚拟机上了。使用命令:

vagrant ssh

这样就可以像操作一般的 Linux 服务器那样,去安装软件,配置等等。

注意,在你电脑上的项目的目录,与虚拟机里面的 /vagrant 这个目录是同步的。

安装 nginx

下面,我们在虚拟机上安装一下 nginx 这个 Web 服务器作为演示。在 CentOS 系统上配置一个完整的可以运行 php 的环境。

wget 

再执行:

sudo rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm

然后用 yum 安装 nginx :

sudo yum install nginx

安装完成以后,可以启动 nginx 服务:

sudo service nginx start

启动了虚拟机上的 nginx 服务以后,在我们的电脑上,或者处在同一网络中的其它设备,就可以访问到这台虚拟机提供的 Web 服务了。不过,首先我们要知道这台虚拟机在内网中的 IP 地址,执行命令:

ifconfig

返回:

eth0 Link encap:Ethernet HWaddr 08:00:27:CE:08:3D inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fece:83d/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:596 errors:0 dropped:0 overruns:0 frame:0 TX packets:397 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:61284 (59.8 KiB) TX bytes:50362 (49.1 KiB) eth1 Link encap:Ethernet HWaddr 08:00:27:C4:AB:A1 inet addr:192.168.1.104 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fec4:aba1/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2 errors:0 dropped:0 overruns:0 frame:0 TX packets:11 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1180 (1.1 KiB) TX bytes:1578 (1.5 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

我的电脑在这个局域网里有一个内部的 IP 地址,这个地址是 192.168.1.* ,在这个网络里面的其它的设备,比如 iPhone ,iPad 或者是其它的电脑,它们的内部的 IP 地址都是这样的形式。所以,我可以判断出,eth1 里面的 192.168.1.104 ,应该就是这台虚拟机在内网中的 IP 地址。

在自己的电脑上,打开浏览器,输入 192.168.1.104,你应该可以访问到虚拟机提供的 Web 服务。

命令

关掉虚拟机:

vagrant halt

重启虚拟机:

vagrant reload

销毁虚拟机:

vagrant destroy

详细的使用说明,可以查看 vagrant 官方的文档

更新

2014.07.11

今天跟大伙一起在 qq 群里,测试了一下在 Windows 下面去安装配置 vagrant。我自己也在虚拟机上安装的 Windows 做了���试。大部人都配置成功了,下面总结一下常见的问题。

在为 vagrant 添加 box 的时候,注意系统的版本。如果你的操作系统是 32 位的,那么,你下载的 box 一定也要是 32 位的,在VagrantCloud 上搜索你想要的 box ,然后选择合适的版本。比如这篇文章里我推荐安装的是 chef/centos-6.5 这个 box ,它就是一个 64 位的系统 。如果你需要 32 位的系统,可以试一下 vagrant init rafacas/centos65-i386-plain 。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/8b6081aa9911b125fa6a4b88ffb61953.html