一、VirtualBox安装
VirtualBox官网:Oracle VM VirtualBox
这里采用VirtualBox--7.0.0 版本
二、Vagrant安装
Vagrant官网:Vagrant by HashiCorp
Vagrant镜像仓库:Discover Vagrant Boxes - Vagrant Cloud
这里采用Vagrant--2.4.1版本
在cmd命令窗口输入
vagrant
命令弹出如下内容表示vagrant
安装成功
三、安装linux
1.安装镜像并启动
通过Vagrant安装虚拟机:
创建一个空的目录,cmd切换到该目录中,然后执行
vagrant init centos/7
会创建Vagrantfile文件执行
vagrant up
第一次执行的时候会远程下相关的镜像文件,并启动虚拟机。连接虚拟机通过
vagrant ssh
连接
如果安装过程过慢可以把地址复制到浏览器进行安装
- 下载完成后 得到一个名为 xxxxx.xxxx.box文件
- 将这个box添加到vagrant中
- 然后启动 vagrant up 进行启动
# 将box添加到vagrant中--在新创建的空文件夹中cmd进入命令行窗口name-可自定义 box目录
vagrant box add centos/7 D:\VirtualBox.box
# 初始化
vagrant init centos/7
# 启动
vagrant up
2.virtualBox 中就可以看到了
3.配置本机连接虚拟机 公共网络
4.配置磁盘
# 要安装磁盘插件
vagrant plugin install vagrant-disksize
5.配置内存以及Cpu数量
# -*- mode: ruby -*-
# vi: set ft=ruby :# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|# The most common configuration options are documented and commented below.# For a complete reference, please see the online documentation at# https://docs.vagrantup.com.# Every Vagrant development environment requires a box. You can search for# boxes at https://vagrantcloud.com/search.# iso镜像名称config.vm.box = "yueluo"# 磁盘大小config.disksize.size = "40GB"# Disable automatic box update checking. If you disable this, then# boxes will only be checked for updates when the user runs# `vagrant box outdated`. This is not recommended.# config.vm.box_check_update = false# Create a forwarded port mapping which allows access to a specific port# within the machine from a port on the host machine. In the example below,# accessing "localhost:8080" will access port 80 on the guest machine.# NOTE: This will enable public access to the opened port# config.vm.network "forwarded_port", guest: 80, host: 8080# Create a forwarded port mapping which allows access to a specific port# within the machine from a port on the host machine and only allow access# via 127.0.0.1 to disable public access# config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"# Create a private network, which allows host-only access to the machine# using a specific IP.# 本机与虚拟机进行连接config.vm.network "private_network", ip: "192.168.56.100"# Create a public network, which generally matched to bridged network.# Bridged networks make the machine appear as another physical device on# your network.# 分配网络config.vm.network "public_network"# Share an additional folder to the guest VM. The first argument is# the path on the host to the actual folder. The second argument is# the path on the guest to mount the folder. And the optional third# argument is a set of non-required options.# config.vm.synced_folder "../data", "/vagrant_data"# Disable the default share of the current code directory. Doing this# provides improved isolation between the vagrant box and your host# by making sure your Vagrantfile isn't accessible to the vagrant box.# If you use this you may want to enable additional shared subfolders as# shown above.# config.vm.synced_folder ".", "/vagrant", disabled: true# Provider-specific configuration so you can fine-tune various# backing providers for Vagrant. These expose provider-specific options.# Example for VirtualBox:#config.vm.provider "virtualbox" do |vb|# Display the VirtualBox GUI when booting the machinevb.gui = true# Customize the amount of memory on the VM:vb.memory = "4096"vb.cpus = 2end## View the documentation for the provider you are using for more# information on available options.# Enable provisioning with a shell script. Additional provisioners such as# Ansible, Chef, Docker, Puppet and Salt are also available. Please see the# documentation for more information about their specific syntax and use.# config.vm.provision "shell", inline: <<-SHELL# apt-get update# apt-get install -y apache2# SHELL
end