Vagrant (1) —— 基本安装与配置(上)

Vagrant (1) —— 基本安装与配置(上)

摘要

基本安装与配置

版本

Vagrant版本: 1.8.1


内容

启动运行

$ vagrant init hashicorp/precise64
$ vagrant up

使用的版本是Ubuntu 12.04 LTS 64-bit

可以通过

$ vagrant ssh	

登录到vagrant vm

项目设置

创建一个vagrant工作目录,其中vagrant init会在这个目录下创建文件Vagrantfile

$ mkdir vagrant_getting_started
$ cd vagrant_getting_started
$ vagrant init

盒子

不同与虚拟机的创建,Vagrant使用镜像克隆,基础的镜像对于vagrant来说叫做盒子box,为vagrant环境指定一个盒子,通常是在创建文件Vagrantfile之后的第一步

安装盒子

$ vagrant box add hashicorp/precise64

这时我们加入的镜像 hashicorp/precise64 处于全局域可以为当前用户使用,如果两个项目都同时使用这个盒子,在一台客户机上修改文件,不会影响另外一台客户机的内容。

在上面的镜像中hashicorp是用户名,precise64 是盒子的名称。

使用盒子

打开Vagrantfile 编辑

Vagrant.configure("2") do |config|
	config.vm.box = "hashicorp/precise64"
end

当名称与我们Vagrant盒子的名称一致时,Vagrant会自行下载并运行它。

官方网站上有很多可供下载的镜像盒子。

如果要查看当前环境的所有盒子可以使用命令

⇒  vagrant box list

得到输出的结果:

hashicorp/precise64   (virtualbox, 1.1.0)
mitchellh/boot2docker (virtualbox, 1.2.0)
mitchellh/boot2docker (vmware_desktop, 1.2.0)
name-of-this-box      (virtualbox, 0)

启动和使用SSH

我们可以使用命令启动Vagrant

vagrant up

如果碰到提示

Bringing machine 'default' up with 'virtualbox' provider...
==> default: VirtualBox VM is already running.

则说明当前盒子的正在运行。

这是我们可以通过命令查看当前所有在Vagrant下运行的盒子的状态

⇒  vagrant global-status

id       name    provider   state    directory
--------------------------------------------------------	---------------------------------
b48d809  default virtualbox running  /Users/Richard/Documents/Dev/vagrant
474492c  default virtualbox running  /Users/Richard/Documents/Dev/vagrant-docker-elk
9f09758  default virtualbox poweroff /Users/Richard/Documents/Dev/vagrant-default-resume		

Vagrant启动的时候会输出相应的提示信息:

==> default: Forwarding ports...
default: 80 (guest) => 4567 (host) (adapter 1)
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222

以上信息的内容是说客户端会开放80端口及22端口,对应本地的端口分别为4567和2222。

然后通过命令,可以登录到Vagrant vm中,(默认情况下这个命令会使用端口22)

vagrant ssh

登录后会显示

Welcome to your Vagrant-built virtual machine.
Last login: Tue Jan 26 09:25:17 2016 from 10.0.2.2
vagrant@precise64:~$		

以上对应我们之前提到的vagrant是用户名,precise64是vm名。

设置同步目录

默认情况下,在./vagrant目录下,Vagrant客户机会和我们镜像保持同步,尝试命令

touch /vagrant/foo

我们会发现相应的文件同时存在于我们的Vagrant主机上,同样Vagrantfile也是同步的。


参考

官方下载

vagrantup.com: INSTALLING VAGRANT

posted @ 2016-01-26 17:35  Richaaaard  阅读(579)  评论(0编辑  收藏  举报