其他分享
首页 > 其他分享> > Vagrant 快速入门

Vagrant 快速入门

作者:互联网

Vagrant 快速入门
Vagrant 简介

Vagrant 是一个用来构建和管理虚拟机环境的工具。Vagrant 有着易于使用的工作流,并且专注于自动化,降低了开发者搭建环境的时间,提高了生产力。解决了“明明在我的机器上可以跑”的问题。

Vagrant 是为了方便的实现虚拟化环境而设计的,使用 Ruby 开发,基于 VirtualBox 等虚拟机管理软件的接口,提供了一个可配置、轻量级的便携式虚拟开发环境。使用 Vagrant 可以很方便的就建立起来一个虚拟环境,而且可以模拟多台虚拟机,这样我们平时还可以在开发机模拟分布式系统。

团队新员工加入,常常会遇到花一天甚至更多时间来从头搭建完整的开发环境,而有了Vagrant,只需要直接将已经打包好的 package(里面包括开发工具,代码库,配置好的服务器等)拿过来就可以工作了,这对于提升工作效率非常有帮助。
为什么选择 Vagrant

Vagrant 提供了一个易于配置,可重复使用,兼容的环境,通过一个单一的工作流程来控制,帮助你和团队最大化生产力和灵活性。
为了实现 Vagrant 的魔力,Vagrant 站在了巨人的肩膀上。虚拟机的配置基于 VirtualBox,VMware,AWS 或者其他提供商。然后一些配置工具,比如 shell 脚本,Chef 或者 Puppet 可以自动化地在虚拟机安装并配置软件。
Vagrant 启动第一台虚拟机

1.安装VirtualBox

公司内网点击http://192.168.0.48/%E8%99%9A%E6%8B%9F%E5%8C%96%E8%BD%AF%E4%BB%B6/Windows%E7%89%88/VirtualBox-6.1.10-138449-Win.exe 下载安装,外网的话官网下载即可

2.安装vagrant

务必等VirtualBox完全安装好后进行安装,公司内网点击:http://192.168.0.48/%E8%99%9A%E6%8B%9F%E5%8C%96%E8%BD%AF%E4%BB%B6/Windows%E7%89%88/vagrant_2.2.10_x86_64.msi 下载安装,外网的话依然去官网下载

3.添加Vagrant box

先下载Vagrant box到指定的目录下,内网:http://192.168.0.48/%E8%99%9A%E6%8B%9F%E5%8C%96%E8%BD%AF%E4%BB%B6/Windows%E7%89%88/virtualbox.box ,外网的话参考官网的镜像http://www.vagrantbox.es/ 自行下载

然后进入下载的box所在路径

添加 box 命令格式:vagrant box add <本地 box 名称> <box 文件>

vagrant box add centos ./virtualbox.box

4.查看 box 是否添加成功

vagrant box list

5.初始化上面添加的 box

初始化命令格式:vagrant init <本地 box 名称>
vagrant init ‘centos’
这里初始化前面添加的 box,初始化后会在当前目录生产一个 Vagrantfile 文件,里面包含了虚拟机的各种配置,关于具体每个配置项是什么意思,后面会介绍

6.启动虚拟机

启动虚拟机时会自动将当前目录(即 Vagrantfile 文件所在目录),和虚拟机的 /vagrant 目录共享。

7.连接虚拟机
命令格式:vagrant ssh

可以看到已经进入到虚拟机了,并且可以通过dir /vagrant/ 查看默认的映射目录

8.对box进行自定义操作

对box完成自定义的操作后,接着打包可以将box快速打包分享部署

9.Vagrantfile的简单配置

当前修改路径下的Vagrantfile文件为:

Vagrant.configure(“2”) do |config|
config.vm.box = “centos”
#虚拟机配置内存/cpu
config.vm.provider “virtualbox” do |v|
v.customize [“modifyvm”, :id, “–name”, “centos”, “–memory”, “1024”]
v.customize [“modifyvm”, :id, “–cpus”, “2”]
end
#虚拟机的主机名称
config.vm.hostname = “master”
#映射的目录
config.vm.synced_folder “/test”, “/vagrant_data”
#端口的转发,端口映射
config.vm.network :forwarded_port, guest: 80, host: 6666
#Public network配置
#config.vm.network “public_network”, ip: “192.168.14.91”
end

然后执行重新启动虚拟机的命令:vagrant reload,重载虚拟机,会发现新的目录也映射到虚拟机内并且端口主机名和配置也相应的修改了

10.box打包

10.1关闭虚拟机

vagrant halt

10.2打包

vagrant package --output ansible.box

指定生成的包名称为:ansible.box

导出完了后就是一个box文件,然后部署按照第三步的方式部署即可

Vagrant 常用命令清单
• vagrant box add 添加box
• vagrant init 初始化 box
• vagrant up 启动虚拟机
• vagrant ssh 登录虚拟机
• vagrant box list 列出 Vagrant 当前 box 列表
• vagrant box remove 删除相应的 box
• vagrant destroy 停止当前正在运行的虚拟机并销毁所有创建的资源
• vagrant halt 关机
• vagrant package 把当前的运行的虚拟机环境进行打包为 box 文件
• vagrant plugin 安装卸载插件
• vagrant reload 重新启动虚拟机,重新载入配置文件
• vagrant resume 恢复被挂起的状态
• vagrant status 获取当前虚拟机的状态
• vagrant suspend 挂起当前的虚拟机
• vagrant global-status 查看当前 vagrant 管理的所有 vm 信息

• vagrant global-status --prune 删除 vagrant 无效虚拟机

• vagrant ssh-config 查询虚拟机的ssh链接信息

标签:box,入门,Vagrant,虚拟机,vagrant,vm,config,快速
来源: https://blog.csdn.net/ywtech/article/details/121168776