手机版
你好,游客 登录 注册
背景:
阅读新闻

Vagrant使用简明教程

搭建Vagrant运行环境

[日期:2016-12-29] 来源:图灵社区  作者:麦满屯 [字体: ]

1. 关于Vagrant

Vagrant是一个虚拟机管理工具。可以实现快速的虚拟机镜像分发和使用。可以说,Vagrant使得虚拟机技术的使用门槛大大降低。让所有人都可以快速的使用虚拟机投入到具体的开发工作中去。(尤其对于那些需要在服务器环境中进行开发的人来说)。

2. 安装Vagrant

Vagrant的安装非常简单,从它的主页上可以方便的下载得到在各种操作系统下的安装程序。我使用的是Win7操作系统。因此直接下载对应操作系统的安装程序即可。Vagrant的安装符合win7下安装应用的一般过程。这就不用多说了。

要使用Vagrant,当然需要虚拟化技术的支持。目前Windows操作系统已经支持的HyperV的虚拟化技术。对于Win7操作系统来说,默认并没有提供该项功能。需要单独从Microsoft的网站上安装。在其他的虚拟化技术中,由于VirtualBox是开源的,并且在各类操作系统中均有运行环境,因此在Vagrant一开始支持的虚拟化技术中,VirtualBox是首先得到支持的。目前VMWare的虚拟化技术也已经得到了Vagrant的支持。为了方便学习,我选择VirtualBox作为虚拟化解决方案。当然,关于Vagrant使用VirtualBox的各类教程,也是最多的。

VirtualBox的安装,同样,从主页下载程序后执行安装即可。

3. 配置Vagrant和VirtualBox

Vagrant和VirtualBox安装完成后,默认存放虚拟机镜像文件的位置在系统盘。这对于大多数系统盘容量有限的人来说,很快就会收到“磁盘容量不足”的告警。通过必要的设置将镜像数据移出系统盘。

3.1. 更改VirtualBox的镜像文件存放位置

具体步骤如下:

  1. 打开VirtualBox,从菜单项选择 全局设置 (快捷键是 Ctrl-G
  2. 选择 常规 里的 默认虚拟电脑位置(M)
  3. 设置为非系统盘的位置。
  4. 将原位置中的虚拟机镜像移动到新的位置。
  5. 如果在设置前已经安装了虚拟机,那么在Windows 资源管理器中,选择对应目录中的 Vbox 文件,即可将新目录中的虚拟机镜像添加到VirtualBox中。

3.2. 更改Vagrant的镜像存储位置

Vagrant对于虚拟机的管理分成两个部分:Box和Machine。Box是指初始的未部署的虚拟机镜像文件。这个文件相当于是虚拟机的一个模板,可以进行无限制次数的复制。Machine,是指处于可运行状态下的虚拟机。当在Vagrant中添加box是,默认Vagrant会将这些虚拟机模板镜像文件存放在c:\User\<Username>\.Vagrant.d里。因此,当使用Vagrant管理的虚拟机模板镜像较多时,这个目录也是比较大的。可以转移到其他磁盘分区上。方法是:

  1. c:\User\<username>\.vagrant.d 目录移动到新的位置
  2. 设置 VAGRANT_HOME 环境变量指向新的位置即可。

4. 使用vagrant添加虚拟机镜像

4.1. 从互联网添加虚拟机镜像文件

在正式使用Vagrant前,建议先添加vagrant的镜像文件。使用如下指令添加虚拟机模板镜像文件:

E:\vagrant_starter>vagrant box add Ubuntu/trusty64

执行上面的指令后,系统会自动从互联网下载相应的镜像文件。执行上述指令后,会得到如下的输出:

E:\vagrant_starter>vagrant box add ubuntu/trusty64
==> box:Loading metadata for box 'ubuntu/trusty64'
    box: URL: https://vagrantcloud.com/ubuntu/trusty64==> box:Adding box 'ubuntu/trusty64'(v14.04)for provider: virtualbox
    box:Downloading: https://atlas.hashicorp.com/ubuntu/boxes/trusty64/versions/14.04/providers/virtualbox.box
    box:Progress:0%(Rate:7168/s,Estimated time remaining:21:27:41)

Progress 进展到100%时,相应的镜像就添加到Vagrant中可供随时克隆使用了。

TIP : 在VagrantCloud有大量已经制作好可供下载的基础镜像文件。有兴趣可以去看看,能减少自己做系统的时间。

4.2. 从本地添加镜像文件

从互联网添加是最基本的方法。从本地已经下载好的文件中添加镜像文件当然会更加的方便。要添加本地已下载好的镜像文件,执行如下指令即可:

E:\vagrant_starter>vagrant box add ubuntu/trusty64 file:///e:\download\trusty-server-cloudimg-amd64-vagrant-disk1.box

5. 初始化虚拟机

开始使用虚拟机,首先需要将虚拟机模板镜像导入“工作环境”。如前所属,已经添加了 ubuntu/trusty64 镜像之后,可以之间使用如下指令完成相关虚拟机的初始化。

E:\vagrant_starter>vagrant init ubuntu/trusty64
A `Vagrantfile` has been placed inthis directory.You are now
ready to `vagrant up` your first virtual environment!Please read
the comments in the Vagrantfileas well as documentation on
`vagrantup.com`for more information on usingVagrant.

如果以前没有使用 vagrant box add 指令,直接使用init命令时,会先添加box,完成后再执行初始化操作。

6. 使用虚拟机

6.1 启动虚拟机

启动虚拟机只需要一个指令,并且可以得到一下输出:

E:\vagrant_starter>vagrant up
Bringing machine 'default' up with'virtualbox' provider...==>default:Importingbase box 'ubuntu/trusty64'...==>default:Matching MAC address for NAT networking...==>default:Setting the name of the VM: git-server_default_1418350291527_32287
==>default:Clearing any previously set forwarded ports...==>default:Clearing any previously set network interfaces...==>default:Preparing network interfaces based on configuration...default:Adapter1: nat
==>default:Forwarding ports...default:22=>2222(adapter 1)==>default:Booting VM...==>default:Waitingfor machine to boot.This may take a few minutes...default: SSH address:127.0.0.1:2222default: SSH username: vagrant
    default: SSH auth method:private key
==>default:Machine booted and ready!==>default:Checkingfor guest additions in VM...==>default:Mounting shared folders...default:/vagrant => E:/vagrant_starter

6.2 登录虚拟机

要登陆虚拟机可以使用 Vagrant ssh 命令登录虚拟机系统。登录后可以看到:

E:\vagrant_starter>vagrant ssh
Welcome to Ubuntu14.04.1 LTS (GNU/Linux3.13.0-40-generic x86_64)*Documentation:  https://help.ubuntu.com/System information as of FriDec1202:12:05 UTC 2014System load:0.36Processes:91Usage of /:2.8% of 39.34GBUsers logged in:0Memory usage:21%               IP address for eth0:10.0.2.15Swap usage:0%Graphthis data and manage this system at:
    https://landscape.canonical.com/Get cloud support withUbuntuAdvantageCloudGuest:
    http://www.ubuntu.com/business/services/cloud0 packages can be updated.0 updates are security updates.


vagrant@vagrant-ubuntu-trusty-64:~$

如果你得到了以上的输出显示,好的,你已经成功登录到你的 私有 服务器上了。在你自己的服务器上撒泼打滚吧,在这个服务器上,你就是 上帝

7. 停止或删除虚拟机

要停止虚拟机的运行,可以使用如下指令:

  • 虚拟机关机:E:\vagrant_starter>vagrant halt

  • 虚拟机挂起:E:\vagrant_starter>vagrant suspend

  • 删除虚拟机:E:\vagrant_starter>vagrant destory

    危险:虚拟机删除后,所有在虚拟机中做的改动都不再存在。如果重新使用,需要再次使用init命令初始化。此时得到的将是一个全新的虚拟机。所以,注意安全。

8. 参考文档:

  1. Vagrant官方文档: https://docs.vagrantup.com/v2/
  2. 小硬盘伤不起-将Vagrant移出系统盘的方法: http://www.linuxidc.com/Linux/2016-12/138933.htm

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-12/138932.htm

linux
【内容导航】
第1页:为什么要使用Vagrant 第2页:搭建Vagrant运行环境
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款