• 认识vagrant

    • vagrant用于创建和部署虚拟化开发环境
    • 避免了多次重新配置环境
    • 节约了开发时间,同时可以体验不同的操作系统
    • 对于新手也是一个不错的方式,当我们配置出错,直接删除重新安装即可  
  • 准备工具
  • 安装
    • 安装virtualbox,vagrant直接按照平常安装软件一样即可。
    • 安装好后,进入磁盘目录,任意磁盘都行,创建一个管理目录。这里以vagrant目录为例。同时推荐终端工具不适用windows自带的dos,这里推荐xshell工具。 
    • 当以上工具准备好后,即可开始安装了,我们先进入我们创建的vagrant目录中,查看当前当前的虚拟机列表。vagrant box list。Ubuntu1604server便是我之前实现安装好了的虚拟机。 
    • 我们添加一个虚拟机,vagrant box add 。我这里把镜像文件放在wamp64下面的。添加完之后,我们在查看当前的虚拟机,即可看到我们方才添加的虚拟机
    • 初始化虚拟机  vagrant init ubuntu。此时我们查看vagrant目录下面就会多一个名为Vagrantfile的配置文件。这个配置文件主要后期我们在对虚拟做修改时,直接修改该文件。
    • 开启虚拟机 vagrant up
    • 登录虚拟机 vagrant ssh,登录之后,我们就可以像操作Linux一样操作了。此时我们将我们常用的环境配置直按照平常的操作配置即可。
  • 基本使用命令
    • vagrant box list 查看当前虚拟机
    • vagrant box add 添加一个虚拟机
    • vagrant box remove 移除虚拟机
    • vagrant init 初始化一个虚拟机
    • vagrant up 开启虚拟机
    • vagrant ssh 登录虚拟机
    • vagrant suspend 挂起虚拟机
    • vagrant reload 重启虚拟机
    • vagrant halt 关闭虚拟机
    • vagrant status查看虚拟机状态
    • vagrant destory 删除虚拟机  
  • 端口转化(这里以Nginx为例)
    • 找到vagrant目录下的Vagrantfile配置文件,添加config.vm.network "forwarded_port", guest: 80, host: 8888   8888为Nginx的端口号,80为物理机的端口号,此时我们便可以在我们的物理机上使用127.0.0.1访问Nginx了。 
    • 或者使用virtualbox图形界面。

    •   
  • 打包分发
    • 按照上面的流程,我们基本的环境已经搭建好了,就是将虚拟机打包出去,方便以后或者别人直接使用。
    • 使用vagrant package [--output xxx.box] 不添加后面参数,默认打包为package.box的镜像文件,如果后面参数添加了,则输出xxx.box的镜像文件。
    • 当别人拿到我们打包后的镜像文件,直接使用vagrant init即可使用,此时同样的会生成一个Vagrantfile配置文件,我们需要对虚拟机进行操作,直接在配置文件修改即可。
    • 当我们的镜像文件更新,可以采用第二步的方式,从新打包给别人使用。也可使用命令操作。如下,我们安装了apache2,直接将这个命令发给使用者,添加到Vagrantfile配置文件,在重启虚拟机即可。

vgrant使用简易教程的更多相关文章

  1. 生活科技两相宜:(一)Win7使用微软SkyDrive网盘简易教程

    今天得写一个Win7使用微软SkyDrive网盘的简易教程,主要是给我老婆看,顺便贴出来给大家共享一下:)    使用微软SkyDrive网盘有两个层次.一个是使用网页版,这个跟使用163或者QQ网盘 ...

  2. JavaScript简易教程(转)

    原文:http://www.cnblogs.com/yanhaijing/p/3685304.html 这是我所知道的最完整最简洁的JavaScript基础教程. 这篇文章带你尽快走进JavaScri ...

  3. Emacs简易教程

    Emacs简易教程阅读: 命令: $emacs 进入之后,输入: C-h t 这里,C-h表示按住[Ctrl]键的同时按h ####### 20090620 *退出: 输入“C-x C-c” *撤销: ...

  4. 文件上传利器SWFUpload入门简易教程

    凡做过网站开发的都应该知道表单file的确鸡肋. Ajax解决了不刷新页面提交表单,但是却没有解决文件上传不刷新页面,当然也有其它技术让不刷新页面而提交文件,该技术主要是利用隐藏的iFrame, 较A ...

  5. 【转】Delphi内嵌ASM简易教程

    Delphi内嵌ASM简易教程 作者:heiying2006-03-19 18:33分类:默认分类标签: 前言 Delphi作为一个快速高效的开发平台,使用的人越来越多,但熟悉在Delphi代码中嵌入 ...

  6. Ant 简易教程

    转载:http://www.cnblogs.com/jingmoxukong/p/4433945.html Ant 简易教程 Apache Ant,是一个将软件编译.测试.部署等步骤联系在一起加以自动 ...

  7. Intellj IDEA 简易教程

    Intellj IDEA 简易教程 目录 JDK 安装测试 IDEA 安装测试 调试 单元测试 重构 Git Android 其他 参考资料 Java开发IDE(Integrated Developm ...

  8. MetaProducts Offline Explorer使用简易教程

    MetaProducts Offline Explorer使用简易教程 by windtrace  20170419 最近想下载一个网站上的内容打包成chm文件,以便离线浏览,webzip太长时间不更 ...

  9. Zabbix实战-简易教程系列

    一.基础篇(安装和接入) Zabbix实战-简易教程--总流程  Zabbix实战-简易教程--整体架构图 Zabbix实战-简易教程--DB安装和表分区 Zabbix实战-简易教程--Server端 ...

随机推荐

  1. SQL语句中的日期查询

    我们先创建一个表: CREATE TABLE `student` ( `id` INT NOT NULL AUTO_INCREMENT , `name` VARCHAR(10) NULL COMMEN ...

  2. Java反射理解

    序言 一般而言,动态语言是指程序运行时,允许改变程序结构或变量类型的语言. 从这个观点来看,Perl.Python.Ruby是动态语言,C++.Java.C#不是动态语言. 但是Java有动态相关机制 ...

  3. VS窗体选择BackGroupImage属性报错:已添加具有相同键的项

    高墙我今天第一次遇见这个问题.既然说是"已添加具有相同键的项."那我自然地认为会不会是文件夹哪里命名了两个相同的文件名.然后在这个Exception上越走越远. 好了不说废话.出现 ...

  4. Ackerman 函数 (双递归函数)

    public static int ackerman(int n,int m){  if(n==1&&m==0){return 2;}  else if(n==0&&m ...

  5. 20分钟快速了解Redis

    Redis可以说是目前最火爆的NoSQL数据库! 过去几年,Memcached很盛行,现在有很多公司已将Memcached替换成了Redis.当然,很多人替换并不清楚为什么,只是感觉不想让主流抛弃,这 ...

  6. .Net Core MVC 过滤器(一)

    1.过滤器   过滤器运行在MVC Action Invocation Pipeline(MVC Action 请求管道),我们称它为Filter Pipleline(过滤器管道),Filter Pi ...

  7. 第一个 lua 程序

    第一个 lua 程序 lua 提供一个交互式编程模式, 直接在命令行输入 lua 开启 $ lua > -- 此处可以输入 lua 程序 lua 脚本执行时的 2 种方式 lua + lua 脚 ...

  8. tmux简要介绍

    什么是tmux tmux全称terminal multiplexer,是一个终端复用软件.它可以帮助我们方便地管理多个终端会话. 下面介绍tmux中涉及到的一些名词 window 窗口 pane 窗格 ...

  9. Nmap功能与常用命令

    Nmap功能与常用命令 其基本功能有三个,一是探测一组主机是否在线:其次是扫描主机端口,嗅探所提供的网络服务:还可以推断主机所用的操作系统. Nmap可用于扫描仅有两个节点的LAN,直至500个节点以 ...

  10. 2017-4-26 winform 菜单和工具栏

    如何让radiobutton进行分组: 用Panel    相当于div 菜单和工具栏: MenuStrip(菜单条) ShortcutKeys-------------------------与菜单 ...