Virtualbox 与 Vagrant 的版本
- Virtualbox 5.1.8
- Vagrant 1.86
- ubuntu 14.04
Vagrant 基本命令
查看目前已有的 box
vagrant box list
新增加一个 box
vagrant box add
删除指定指定 box
vagrant box remove
初始化配置vagrantfile
vagrant init
启动虚拟机
vagrant up
ssh登录虚拟机
vagrant ssh
挂起虚拟机
vagrant suspend
重启虚拟机
vagrant reload
关闭虚拟机
vagrant halt
查看虚拟机状态
vagrant status
删除虚拟机
vagrant destroy
打包虚拟机
vagrant package --output <your_package_name.box>
Vagrant 启动并进入虚拟机
添加虚拟机,在盒子所在目录下
$ vagrant box add ubuntu1404 ubuntu1404.box
- ubuntu1404 是自己取的名字,给虚拟环境命名
- ubuntu1404.box 是虚拟镜像文件,后缀名
.box
新建目录
因为一个虚拟环境的配置文件将放在这个目录下。不同虚拟环境最好做不同的目录以隔离。
$ mkdir py3django9_uwsgi
$ cd py3django9_uwsgi
初始化虚拟环境
$ vagrant init
之后在此文件目录下有一个配置文件 Vagrantfile。
可以看见里面写了
config.vm.box = "ubuntu1404"
要用哪个盒子来做虚拟环境,在这里可以修改。
启动虚拟机
$ vagrant up
进入虚拟机
$ vagrant ssh
配置 Ubuntu 国内源
进入虚拟机
- vagrant ssh
替换源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #备份
-
sudo vim /etc/apt/sources.list #修改源把原来的内容删掉,使用
1,20dd的vim多行删除命令。或者dd单行删除。-
将文件内容替换成源文件内容
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
sudo apt-get update #更新源列表
关闭虚拟机
退出 ubuntu 虚拟环境
$ exit
关闭虚拟机
$ vagrant halt
打包虚拟环境
打包
$ vagrant package -output xxx.box
在初始化过的目录下,打包虚拟环境
$ vagrant package --output ubuntu1404_empty.box
用以下命令可以查看到大小。
$ ll -h
至此,虚拟环境就被打包好成新的 package ubuntu1404_empty.box 。
设置共享目录
在 Vagrantfile 配置文件中写入:
config.vm.network :private_network, ip: "11.11.11.11"
config.vm.synced_folder "/Users/macroot/playground", "/home/vagrant/share"
第一行:
private_network 随便取得,IP 地址也是随便写,但最好不要和局域网冲突。
第二行:
/Users/macroot/playground 是本机的共享目录
/home/vagrant/share 是虚拟机上的共享目录,实际显示是 ~/share 里面。