前言

之前在学习谷粒商城项目的时候,了解到Vagrant.又恰巧在bilibli上看到相关教程.于是初略的学习了一番.这里我就大略的讲一下使用

基本命令

image.png

vagrant是可以运行在不同的虚拟机上的.比如virtualbox与hyper-V

目录结构

#初始化一个vagrant
vagrant init centos/7
#启动vagrant 并且使用的是virtualbox
vagrant up --provider=virtualbox  #--provider=hyperv

image.png

Vagrantfile配置

可配置参数: https://www.vagrantup.com/docs/vagrantfile/machine_settings

vagrant是用的ruby编写的.因此具体语法可以参考ruby

配置多个
image.png

通过循环的方式

image.png

Vagrant同步文件

这个是全局配置

1. C:\Users\Hetao\.vagrant.d\boxes\centos-VAGRANTSLASH-7\0\virtualbox
//查看VagrantFile
 code .\Vagrantfile

这里也可以直接在你初始化vagrant目录下改配置,而不是在.vagrant.d中
image.png
这个同步不是实时的,只有每次在vagrant up 或者vagrant reload才会同步
更多方式可以查看官方文档.

这里介绍下使用插件

//最新的版本有问题,这里就装0.21
vagrant plugin install vagrant-vbguest  --plugin-version 0.21
vagrant plugin install --plugin-clean-sources --plugin-source https://mirrors.aliyun.com/rubygems/ vagrant-vnguest

alias vagrant-plugin-install='vagrant plugin install --plugin-clean-sources --plugin-source https://mirrors.aliyun.com/rubygems/'

同时支持hyper-v和virtualbox
image.png

vagrant备份

//备份
vagrant package --base 名称

//还原
加入到vagrant box
vagrant box add --name demo --provider=virtualbox  xx.box
//初始化vagrant
vagrant init 
vagrant up

将自己创建好的box镜像文件上传到vagrantCloud上

//获取sha256,然后上传即可
Get-FileHash .\package.box

参考博客
https://blog.dteam.top/posts/2020-04/vagrant-use-mirror.html

https://fantiq.github.io/2016/07/26/vagrant的安装与使用/