一个只用markdown语法编写文章的90后野路子Web架构师,每天都分享一些有用的知识点,欢迎关注~

前言

1. 概述

本文主要整理了一些Vagrant常用操作。包括安装Vagrant、常用插件、Box操作、项目配置、虚拟机操作等。

2. 脑图

3. 安装软件

第一步. 安装VirtualBox虚拟机软件

第二步. 安装Vagrant软件

4. 安装常用插件

安装vagrant-vbguest插件,作用:自动安装VirtualBox Guest Additions到虚拟机Guest操作系统上

vagrant plugin install vagrant-vbguest

安装vagrant-hostmanager插件,作用:主机名管理插件,即/etc/hosts文件管理

vagrant plugin install vagrant-hostmanager

宿主机为Windows时安装vagrant-winnfsd插件,作用:允许Windows上使用NFS协议共享目录,加快目录访问速度

vagrant plugin install vagrant-winnfsd

5. Box(类似于系统镜像)操作

搜索基础Box

搜索地址: 地址见上面脑图中

添加Box到系统

vagrant box add Box名 --name=添加到系统中的名称#示例vagrant box add ubuntu/trusty64 --name=codebays/ubuntu

列出已添加的Box列表

vagrant box list

更新Box

vagrant box update --box Box名#示例vagrant box update --box=codebays/ubuntu

删除Box

vagrant box remove Box名# 示例vagrant box remove codebays/ubuntu

6. 项目

初始化项目

vagrant init [-m] [BOX名]# 注: -m 表示生成的Vagrantfile最小化,不带任何注释# 示例 vagrant init codebays/ubuntu

校验Vagrantfile文件语法是否正确

vagrant validate

7. Vagrant配置文件

文件名

Vagrantfile

语法

Ruby语言语法

支持的版本号:1和2

Vagrant.configure("2") do |config| # 配置项...end

配置Vagrant软件行为,如使用的插件等

# 使用插件,若未安装则自动安装config.vagrant.plugins = ["vagrant-vbguest"]# 不允许输出到标准输出的敏感字符config.vagrant.sensitive = ["password"]

配置SSH到Guest系统到选型

# SSH上代理转发config.ssh.forward_agent = true# 执行shellconfig.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"

配置使用的Box信息

# 使用的Box名config.vm.box = "huangyandong/centos_7"# Box下载地址与版本号config.vm.box_url = nilconfig.vm.box_version = nil# 虚拟机启动时是否检测更新Boxconfig.vm.box_check_update = false

配置虚拟机参数

# 指定VirtualBox虚拟机配置config.vm.provider "virtualbox" do |vb| # 虚拟机名称 vb.name = "codebays" # 配置内存、CPU、快照目录等 vb.customize ["modifyvm", :id, "--memory", "1024"] vb.customize ["modifyvm", :id, "--cpus", "1"] vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"] vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] vb.customize ["modifyvm", :id, "--snapshotfolder", "/backup"]end

配置网络

# 网络总共3种配置: # 1). 端口映射 # 2). 私网IP(只允许本机访问) # 3). 公网IP(局域网种其他机器可以访问)# 端口映射,将虚拟机中80端口映射为宿主机8080config.vm.network :forwarded_port, guest: 80, host: 8080# 私网IPconfig.vm.network :private_network, ip:"10.10.10.111"

配置共享目录

# Vagrant默认将当前目录映射为虚拟机中/vagrant目录# 禁止默认映射config.vm.synced_folder ".", "/vagrant", disabled: true# 将当前目录中src目录映射为虚拟机中/srv/website目录config.vm.synced_folder "src/", "/srv/website"

上传宿主机文件到虚拟机中

# 上传文件到虚拟机config.vm.provision "file", source: "./test",  destination: "/test"

虚拟机启动时执行shell脚本命令

# 直接执行命令config.vm.provision "shell", inline: "echo Hello, World"# 上传shell脚本执行config.vm.provision :shell do |shell| shell.path = "./test.sh" shell.args = ["arg1", "arg2"]end

最终配置文件

8. 虚拟机操作(注:需要在Vagrantfile文件所在目录下执行)

启动

vagrant up

关闭

vagrant halt

重启

vagrant reload

挂起

vagrant suspend

恢复

vagrant resume

查看状态

vagrant status

查看端口映射信息

vagrant port

SSH登录到虚拟机

vagrant ssh

打包虚拟机环境成Box

vagrant package --output=/tmp/myvm.box

销毁虚拟机

vagrant destroy

==END

oracle vm virtualbox 虚拟光盘_虚拟机管理神器Vagrant完整操作手册来了相关推荐

  1. oracle虚拟机放文件格式,Oracle VM VirtualBox虚拟如何导入虚拟电脑系统

    将制作好的虚拟机格式文件导入到虚拟机,这样操作是非常方便的. 比如制作一次虚拟系统后,将虚拟机文件导出,以后将不用再重新制作,可以用导入方式.开放式虚拟机格式文件有ova/ovf两种后缀. 下面将以O ...

  2. Oracle VM VirtualBox Manager中扩展虚拟机硬盘空间

    您可以按照以下步骤在Oracle VM VirtualBox Manager中扩展虚拟机硬盘空间: 1.      在VirtualBox Manager中,选择要扩展的虚拟机并停止它. 2.     ...

  3. Oracle VM VirtualBox 随系统自动启动虚拟机的方法

    Oracle VM VirtualBox 随系统自动开启虚拟机的方法 @ECHO OFF cd.. cd E: cd.. cd E:\VirtualBox\ start VirtualBox.exe ...

  4. 【超详细】使用Oracle VM VirtualBox 搭建一个Linux虚拟机

    电脑升级了win11后,由于老版本的wmware无法使用,所以尝试使用Oracle VM VirtualBox工具搭建一个Linux虚拟机,用来工作和学习! 下面是搭建过程: [前提准备] 1. 下载 ...

  5. Oracle VM VirtualBox 虚拟硬盘扩容(Linux)

    目录 环境 1. 调整虚拟磁盘虚拟分配空间 2. fdisk无损扩容 环境 VirtualBox 5.2.8 Linux 4.14.154 1. 调整虚拟磁盘虚拟分配空间 如果是vmdk格式的磁盘,目 ...

  6. oracle vm virtualbox安装mac os,虚拟机VirtualBox安装MAC OS 10.12图文教程

    [转]虚拟机VirtualBox安装MAC OS 10.12图文教程 时间:2018-12-05    阅读次数:1982   来源:博客园 VirtualBox虚拟机安装Mac OS 10.12图文 ...

  7. Oracle VM VirtualBox虚拟MS-DOS时失败,提示内存不能为“written”

    闲的没事,一直没用过win10, 想看看到底是什么样子的, 所以在自己这台破电脑上装了个virtual box,然后网上下载了win10的iso安装版,但直接在virtual box 中安装的时候,居 ...

  8. oracle vm virtualbox打不开,如何在虚拟机上打开游戏,我用的是Oracle VM VirtualBox虚拟机,我不会用会用的教我...

    点击查看如何在虚拟机上打开游戏,我用的是Oracle VM VirtualBox虚拟机,我不会用会用的教我具体信息 答:如果是开3D游戏等,就算了吧,虚拟机为了保证兼容性,虚拟的显卡都是集成的,开个w ...

  9. XP虚拟机Oracle复制粘贴,Oracle VM VirtualBox我想问怎样在虚拟机上拖动复制或运行主机上的文件...

    点击查看Oracle VM VirtualBox我想问怎样在虚拟机上拖动复制或运行主机上的文件具体信息 答:Oracle VM VirtualBox安装增强功能好像也不能直接复制拖动文件,只能使用共享 ...

最新文章

  1. 机器学习sklearn19.0聚类算法——Kmeans算法
  2. python统计自己微信好友并抓取信息
  3. vue 的elementui中select下拉框多选项-multiple属性
  4. 作为函数的mixin
  5. uni-app条件编译:#ifdef #ifndef #endif
  6. 【WPF】自定义GridLineDecorator给ListView画网格
  7. 你想过没有,学校从来没教过你怎么赚钱
  8. 聚奎中学2021高考成绩查询,江津2017全体高考考生的喜报
  9. windows 2003 iis php,windows 2003 iis安装php 5.2版本步骤
  10. 通达信 移动平均算法_财富趋势,它的产品叫通达信
  11. vue 使用 vue-wechat-title 动态设置title
  12. 2016年民营企业500强榜单(全国工商联发布)
  13. 第7-5课:格式化文件读写与 PCX 图像文件
  14. Android实现网络视频播放
  15. 非线性可视化(3)混沌系统
  16. 阿里研究员吴翰清:世界需要什么样的智能系统
  17. 教师招聘计算机面试技能测试,教师招聘面试中技能测试指什么
  18. DTO代码自动生成器的入门 DTOHelper
  19. vue 项目开发 lenovo商城
  20. 麒麟系统ip连接数据库

热门文章

  1. 读书笔记_Effective_C++_条款二十四: 若所有参数皆需类型转换,请为此采用non-member函数...
  2. Citrix XenDesktop 虚拟桌面 每用户/设备 许可手动释放
  3. Go 单元测试从 0 到 1
  4. Linux 命令(105)—— service 命令
  5. oracle和db2之间的基本差别
  6. 推荐: 一个业务流程梳理工具Sam
  7. 【CF666E】Forensic Examination - 广义后缀自动机+线段树合并
  8. JS在与lua的交互心得
  9. 【拼爹坑爹不比爹】深入理解css中position属性及z-index属性
  10. 如何以nobody用户执行命令?