Vagrant是一个基于Ruby的工具,用于建立和部署虚拟化开发环境,有点docker的容器的味道.linux
适合于在window下,但代码跑在linux上的那类像我同样买不起mac的穷屌丝.docker
为linux和window建立共享目录,window下开发,linux上代码直接同步shell
vagrant 的相关命令特别少,便于使用ubuntu
开发环境配置一次能够生成box文件,可移植.网络
官网地址: https://www.vagrantup.com/
下载box的地址:ssh
vagrant工具
VirtualBox.net
ubuntu14.04.box(举例)命令行
vagrant是一款虚拟机管理工具,使用它能够快速搭建可复用、可移植的开发环境。vagrant
安装VirtualBox
安装vagrant 查看是否安装成功,cmd下vagrant -v
添加镜像到vagrant
vagrant box add ubuntu14.04 F:/vagrantBox/ubuntu14.04.box
ubuntu14.04
为咱们给box命名的名称 F:/vagrantBox/ubuntu14.04.box
为镜像的路径
在vagrantBox目录上按住shift而后鼠标右键,选择在此打开命令窗口便可在命令行进入当前目录
vagrant box list --查看box的列表
初始化开发环境
命令行下进入当前目录,执行下面的命令
vagrant init ubuntu14.04
相应会生成一个名称为Vagrantfile
的配置文件
修改配置文件
打开 Vagrantfile,取消下面的注释,而后重启
config.vm.network "public_network" --公共网络,相似于virtual box的桥接模式
自定义ip地址,能够经过该ip链接该机器
Vagrant 默认是使用端口映射方式将虚拟机的端口映射本地从而实现相似 http://localhost:80 这种访问方式,这种方式比较麻烦,新开和修改端口的时候都得编辑。
启动和登陆
启动vagrant up
,查看状态vagrant status
能够经过客户端工具执行ssh登陆
默认帐号:vagrant 默认密码:vagrant 能够在配置文件查看.
cmd下vagrant ssh
命令,能够查看到以下信息
Host: 127.0.0.1 Port: 2222 Username: vagrant --远程链接帐号 Private key: C:/Users/Administrator/.vagrant.d/boxes/ubuntu14.04/0/virtualbox/va grant_private_key --远程链接秘钥
这里以xshell为例,选择秘钥登陆 主机为: 配置文件中修改的ip
打包分发
当你配置好开发环境后,退出并关闭虚拟机。在终端里对开发环境进行打包:
vagrant package --在当前box路径运行,直接生成一个package.box的包 vagrant package --output boxname --在当前box目录下生成一个boxname名称的合做
打包完成后会在当前目录生成一个 package.box
的文件,将这个文件传给其余用户,其余用户只要添加这个 box 并用其初始化本身的开发目录就能获得一个如出一辙的开发环境了。
本人使用第二条命令打包之后,本地盒子不能用了,可是导出的盒子能够用
基本命令
vagrant box add NAME URL #添加一个box vagrant box list #查看本地已添加的box vagrant box remove NAME virtualbox #删除本地已添加的box,如如果版本1.0.x,执行vagrant box remove NAME vagrant init NAME #初始化,实质应是建立Vagrantfile文件 vagrant up #启动虚拟机 vagrant halt #关闭虚拟机 vagrant destroy #销毁虚拟机 vagrant reload #重启虚拟机 vagrant package #当前正在运行的VirtualBox虚拟环境打包成一个可重复使用的box vagrant ssh #进入虚拟环境
`window下的虚拟主机的配置目录
C:WindowsSystem32driversetchosts`
注意:默认分配512M,能够扩大为1G 左右,不然在安装的时候,可能会报错