使用Windows7(64位)操作系统,借助VirtualBox+Vagrant工具来创建CentOS虚拟环境
首先
我想在MEAN环境下进行网页开发,首先尝试使用VirtualBox+Vagrant建立CentOS的虚拟环境。有些电脑不支持虚拟化,或者由于VirtualBox和Vagrant版本的兼容性问题导致出现错误,无法成功执行vagrant up等等…由于遇到了各种困难,所以我打算后续整理并分享一下关于这些错误的内容。
希望您能参考我总结的关于准备阶段虚拟环境构建的步骤,这次分享希望能为您带来幸福。
1. 安装
我們會安裝虛擬機軟體VirtualBox和Vagrant在Windows上。
1-1. 安装VirtualBox
请点击以下链接下载并安装适用于Windows主机的VirtualBox 4.3.26 x86/amd64版本。
(本次安装了最新版本的VirtualBox 4.3.26)
https://www.virtualbox.org/wiki/Downloads
Oracle VirtualBox已安装在C:\Program Files目录下,并在桌面上添加了图标。
1-2. 安装Vagrant
请点击以下网址下载和安装Windows版本的Vagrant(Universal 32位和64位)。
https://www.vagrantup.com/downloads.html
确认 Vagrant 的版本
在Windows上打开命令提示符,键入vagrant –version来进行确认。
C:\Users\user>vagrant --version
Vagrant 1.7.2
截至2015年4月26日,最新版本为1.7.2。
2. 添加盒子
您可以从以下链接中确认您想要添加的Box:
http://www.vagrantbox.es/
由于我们想要添加的是CentOS6.5,所以请按照以下方式在命令提示符中进行添加:
(以CentOS65作为Box的名称进行添加)
「添加虚拟机镜像」
vagrant box add {适当的名称} {box文件URL}
C:¥Users¥user> vagrant box add CentOS65 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box
请确认是否已添加了Box。
在命令提示符下输入vagrant box list
C:\Users\user>vagrant box list
CentOS65 (virtualbox, 0)
我确认了刚刚使用的名字添加了盒子。
删除盒子
如果在vagrant box list中找到了未使用的盒子,并且想要删除它时,
可以使用以下命令进行删除。(例如,删除名为CentOS7的盒子)
vagrant box remove CentOS7
参考网站:http://qiita.com/mochizukikotaro/items/52f4434c3f69c4ba1f54
3. 创建虚拟机
我們將在以下命令提示符中進行操作:
– 創建一個名為centos的文件夾
(此次我們將它創建在C:\Users\user中)
C:\Users\user> mkdir centos
我們將會切換到創建的CentOS上。
C:\Users\user> cd centos
生成Vagrantfile。
C:¥Users¥user¥centos> vagrant init CentOS65
确认是否已生成Vagrantfile
C:¥Users¥user¥centos> dir
最终,打开类似于terapad的文本编辑器,以查看Vagrantfile。
# 表示将该行变为注释。
因此,只需确保Vagrantfile如下所示即可。
Vagrant.configure(2) do |config|
config.vm.box = "CentOS65"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.synced_folder "../hello", "/var/www/html/hello"
end
我删除了”config.vm.network “private_network”, ip: “192.168.33.10”的#并添加了”config.vm.synced_folder “../hello”, “/var/www/html/hello”。
以下是一种可能的汉语释义:
config.vm.synced_folder “../hello”, “/var/www/html/hello”是一个能够实现文件共享的程序。
通过这个程序,您可以在虚拟操作系统上访问位于C:\Users\user目录下的hello文件夹。
详细信息将在下一部分进行说明。
3-1. 创建共享文件夹
可以将 CentOS 的特定目录与 Windows 共享。
创建文件夹。
使用文本编辑器(例如Terapad),新建一个名为hello的文件夹。然后在hello文件夹中创建一个名为index.html的文件。
<h1>Hello Vagrant!</h1>
在”4. CentOS的启动”中,当启动CentOS时,在/var/www/html目录下会有一个名为hello的文件夹,如果hello文件夹内有index.html文件,那就表示它是一个共享文件夹。
4. CentOS的启动
从这里开始执行CentOS的启动、连接和停止。
4-1. CentOS启动
在命令提示符中输入”vagrant up”即可启动。
C:¥Users¥user¥centos> vagrant up
参考:
vagrant up:启动虚拟机
vagrant halt:关闭虚拟机
vagrant status:检查虚拟机状态
vagrant suspend:暂停虚拟机
vagrant reload:重启虚拟机
vagrant destroy:删除虚拟机
5. SSH连接
如果要进行SSH连接,
在Mac上可以使用vagrant ssh进行连接,
但在Windows上无法,所以我们将使用TeraTerm来进行连接。
5-1. 安装Tera Term
请从以下网址安装TeraTerm。
http://www.forest.impress.co.jp/library/software/utf8teraterm/
有Tera Term和Tera Term便携版两个选项,
请下载并安装Tera Term。
一旦成功下载和安装后,Tera Term的图标将会在桌面上显示出来。
5-2. 通过Tera Term访问


当您能够无问题地连接时,会显示”[vagrant@vagrant-centos65 ~]$”.
6. 检查共享文件夹
让我们来确认刚才通过「3-1. 共有文件夹创建」创建的文件夹。
在已经建立SSH连接的状态下,
在Tera Term终端内输入ls -l /var/www/html/hello,
可以确认存在index.html文件。
[vagrant@vagrant-centos65 ~]$ ls -l /var/www/html/hello
total 1
-rwxrwxrwx 1 vagrant vagrant 23 Apr 25 08:56 index.html
7. 启动Web服务器
在SSH连接状态下,通过Tera Term终端输入以下命令来安装和启动httpd(Apache)。
[vagrant@vagrant-centos65 ~]$ sudo yum -y install httpd
[vagrant@vagrant-centos65 ~]$ sudo chkconfig httpd on
[vagrant@vagrant-centos65 ~]$ sudo service httpd start
7-1. 网页显示的确认

当要结束时,用户可使用“exit”命令结束TeraTerm,并使用“vagrant halt”命令结束命令提示符。
在上面的操作中,
我成功在Windows7上使用VirtualBox和Vagrant来构建了CentOS的虚拟环境。
最后
这次只是显示共享文件夹的HTML源代码,但是以后我们会创建新目录,并在那里构建MEAN环境。
我整理了以下步骤,用于建立MEAN环境。在启动的CentOS6.5上使用Vagrant来构建MEAN环境。
请参考以下网站
在Windows上使用VirtualBox+Vagrant+CentOS来构建虚拟环境。
链接:http://qiita.com/hiroyasu55/items/11a4c996b0c62450940f
删除未使用的Vagrant Box。
链接:http://qiita.com/mochizukikotaro/items/52f4434c3f69c4ba1f54