Vagrant 简介及常用命令
一、Vagrant 概念
Vagrant 中的概念:
- Box : Box 是 Vagrant 环境的包格式,任何人都可以在 Vagrant 支持的任何平台上使用 Box 来创建相同的工作环境,类似镜像文件 iso 的概念。
- Provider : Box 的提供者,如 VirtualBox 和 VMware 等。
- Vagrantfile : Vagrantfile 的主要功能是描述虚拟机,包括声明类型和配置信息等,虚拟机创建时会读取这个文件,然后根据配置项创建虚拟机。
Box 类似 ISO 镜像文件,用于安装虚拟机系统,Provider 为 Vagrant 提供了这些安装虚拟机系统的 Box 版本,Vagrantfile 中记录了虚拟机的各种参数,用 Box 创建虚拟机时会读取这些参数。
二、常用命令
vagrant --version
vagrant box list
vagrant box add [boxname] [url]
vagrant box remove [boxname]
vagrant box update
vagrant box repackage [name|id] --output [name]
vagrant init [name [url]]
vagrant up [name|id]
vagrant halt [name|id]
vagrant reload [name|id]
vagrant reload --provision
vagrant suspend [name|id]
vagrant resume [name|id]
vagrant destory [name|id]
vagrant status [name|id]
vagrant globla_status
vagrant port [name|id]
vagrant validate
vagrant ssh [name|id]
vagrant ssh-config [name|id]
vagrant snapshot list
vagrant snapshot push
vagrant snapshot pop
vagrant snapshot save [vm-name] [NAME]
vagrant snapshot restore [vm-name] [NAME]
vagrant snapshot delete [vm-name] [NAME]
三、Vagrantfile 基本配置
Vagrant.configure("2") do |config|
config.vm.box = "centos7"
config.vm.hostname = "centos7"
config.vm.define "centos7"
config.vm.box_check_update = false
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.name = "centos7"
vb.memory = 2048
vb.cpus = 2
end
四、使用 Xshell 连接虚拟机
Vagrant 虚拟机默认不提供用户密码连接,提供了一个 primary_key 私有密钥,使用密钥登录即可。
首先进入 Vagrantfile 所在的路径,然后使用 vagrant ssh-config 查看密钥文件的路径。
|