vagrant + virtualbox + box

第一步:安装virtualbox (本人virtualbox版本 4.3.30)
具体安装包请直接从官网下载:https://www.virtualbox.org/wiki/Downloads

第二步: 安装 vagrant (本人vagrant 版本 Vagrant 2.2.2)

vagrant -v

Vagrant  2.2.2

第三步:vagrant 基本命令

官网文档:https://www.vagrantup.com/docs/getting-started/index.html

vagrant box list:查看box列表
vagrant add box box 名字 box地址:添加box,自动帮你生成 Vagrantfile
vagrant init box 名字:初始化 Vagrantfile
vagrant up:启动虚拟机
vagrant ssh:连接虚拟机
vagrant halt:关闭虚拟机
vagrant reload:重新加载 Vagrantfile 文件
vagrant suspend:暂时挂起虚拟机
vagrant destroy:销毁虚拟机
vagrant status:查看虚拟机运行状态
vagrant package:导出 Box

在使用 Vagrant 的时候,遇到了这样一个问题:创建的 Ubuntu 虚拟机,需要访问外部网络,所以需要将虚拟机的网络模式设置为桥接模式(Bridged),于是就使用 VirtualBox 进行设置,但设置成功之后,每次 Vagrant 启动虚拟机的时候,都会进行网络模式重置,但如果用 VirtualBox 启动的话,就没有什么问题。

image.png

这个问题搞了好久,最后的解决方案是修改 Vagrantfile 配置文件,添加如下配置:

config.vm.network "public_network", bridge: "en0: Wi-Fi (AirPort)"
config.vm.boot_timeout = 20

boot_timeout是链接超时设置(20 秒),bridge后面表示桥接的网络模式(WiFi 网络),如果不进行设置的话,每次启动虚拟机的时候,会进行选择网络模式:

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Specific bridge 'en1: Wi-Fi (AirPort)' not found. You may be asked to specify
==> default: which network to bridge to.
==> default: Available bridged network interfaces:
1) en0: Wi-Fi (AirPort)
2) en1: Thunderbolt 1
3) en2: Thunderbolt 2
4) p2p0
5) awdl0
6) bridge0
7) vmnet1
8) vmnet8
==> default: When choosing an interface, it is usually the one that is
==> default: being used to connect to the internet.
    default: Which interface should the network bridge to?   

实例 Centos 7 box

1.目录


image.png

2.添加box

cd /Users/faunjoe/vagrant
vagrant box add centos centos-7.0-x86_64.box

3.查看box列表

vagrant box list

4.初始化centos7虚拟机
初始化完成后,会在当前目录下生成一个 VagrantFile 配置文件,里面是对虚拟机环境的一些配置(可以手动修改)

cd /Users/faunjoe/vagrant/centos7
vagrant init centos7
image.png

5.启动虚拟机

cd /Users/faunjoe/vagrant/centos7
vagrant up
image.png

6.连接虚拟机

vagrant ssh
image.png

7.关闭虚拟机

vagrant halt
image.png

8.销毁虚拟机

vagrant destroy
image.png

修改默认登录用户

默认的登录用户是vagrant,如果想实现默认root登录,可在Vagrantfile 文件中添加如下配置:

config.ssh.username = 'root'
config.ssh.password = 'vagrant'    
config.ssh.insert_key = 'true'

(root默认密码是:vagrant)

修改box内存大小

直接通过virtualbox修改
修改Vagrantfile文件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容