创建一个目录
mkdir helloworld
cd helloworld
初始化虚拟机
vagrant init centos-7
其中的centos-7
是CentOS7的box名字,也就是通过vagrant box add
加载的box的名称。
vagrant box add E:\VirtualBox\box\CentOS-7.box --name centos-7
这个命令会生成一个Vagrantfile文件,这里的名字没指定或者写错了都没关系,后面需要根据具体情况编辑这个Vagrantfile文件。
执行命令
vagrant up
命令行执行日志
注意到这里包含的信息:
22 (guest) => 2222 (host) (adapter 1)
,把虚机的22端口,映射到宿主机的2222端口上,这样就可以通过127.0.0.1:2222
访问虚拟机了执行成功后,VirtualBox显示
vagrant status
vagrant status
命令执行后,还提示了一些如何操作虚拟机的命令。
#关闭虚拟机
vagrant halt
#暂停虚拟机
vagrant suspend
#启动虚拟机
vagrant up
执行如下命令
vagrant ssh
就能以vagrant用户直接登入虚拟机中
切换到root用户
另外,需要root用户权限的命令也可以通过在命令前添加sudo
来执行,或者也可以执行sudo -i
直接切换到root用户来执行。
打开VirtualBox程序,可以看到通过命令vagrant up
创建的虚机
也可以在VirtualBox的终端上登录系统,默认的登录用户名和密码都是 vagrant。
登录
当然还可以使用其它的 SSH 连接工具例如:XShell,SecureCRT连接,但是这里默认网卡使用的是NAT模式,没有指定IP,实际应用并不方便,在后面介绍网络配置时再介绍。
vagrant halt
直接在 VirtualBox 上关闭虚拟机,或者直接在虚拟机内部执行 poweroff 命令也都是可以的。
vagrant suspend
把暂停状态的虚拟机恢复运行
vagrant resume
注意: 不管虚拟机是关闭还是暂停状态,甚至是 error 状态,都可以执行 vagrant up 来让虚机恢复运行。
执行下面的命令会重启虚拟机,并且重新加载 Vagrantfile 中的配置信息。
vagrant reload
执行下面的命令可以彻底删除虚拟机,包括整个虚拟机文件。
vagrant destroy
注意:上面所有的 vagrant 命令都需要在 Vagrantfile 所在的目录下执行。
https://davycloud.com/post/vagrant-virtualbox-tutorial/