Vagrant使用【1】
来源:互联网 发布:淘宝小号无忧 编辑:程序博客网 时间:2024/05/17 09:35
前言:某天和同事聊天,聊到自己对Windows系统开发环境步署的问题很困扰。为什么呢?因为自己使用的是双系统:使用Linux系统的时候,常常需要使用Google查找资料,但是没有找到登录VPN的方法;使用Windows系统的话,很多开发环境步署管理太浪费时间了。同事推荐了解下Vagrant,趁着周末,花了大半天了解了下。
Vagrant是何方神圣?
官网的介绍是:Create and configure lightweight, reproducible, and portable development environments.
有四个关键字,lightweight、reproducible、portable以及development environments。
lightweight:以自己的使用经验来看,Vagrant能够做到轻量级的原因与其去除虚拟机图形化界面有关。如果直接使用Virutalbox开启虚拟电脑,基本上使用的是图形化界面,内存分配容量基本大于1G。但是,通过Vagrant开启的Virutalbox的虚拟电脑默认是512M。换句话说,原来开1个虚拟电脑的内存,现在可以开启两个Vagrant虚拟电脑(或者说Vagrant box)。
reproducible:这个可再生特性必须要再加上快速两个字。因为不使用Vagrant也能够以可再生的方式布署多套虚拟电脑环境,但是手工方式创建Vagrant一系列的选项以及虚拟电脑包管理,个把小时是解决不了的。但是Vagrant的provisioning特性理论上能够解决这个问题,为什么说是理论上呢?因为理论上,包管理可以通过一系列脚本来处理,Vagrant只需要管理调用这些脚本就可以,但是呢,自己在Windows使用过程中,发现直接调用Shell脚本是无法达到包管理的(这个需要再研究下,TODO)。
portable:在完成一台电脑的虚拟环境布署后,如何能够在其他机器上快速步署呢?这个Portable有些类似于绿色软件,只要打个包就可以到另外电脑再次布署了。
development environments:对于开发而言,环境不一致的问题,可能会让人头大的。
Vagrant安装
官方文档中安装可通过以下命令完成:
mkdir vagrant_getting_started
cd vagrant_getting_started
vagrant init hashicorp/precise64
vagrant up
vagrant ssh
说明:可以描述为安装Linux镜像,启动,SSH登录
Vagrant安装问题
1. 虚拟机软件问题
我使用的是开源虚拟机软件VirtualBox。在安装完Virtualbox后,vagrant竟然没有识别出VirtualBox,直接从官网龟速下载VirtualBox,受不了啊!!!在尝试设置PATH无效后,Google找到:
”sets the VBOX_INSTALL_PATH or VBOX_MSI_INSTALL_PATH environment variable which is what Vagrant uses to look it up“,直接设置VBOX_INSTALL_PATH后,终于识别出默认的Virtualbox了。
2. hashicorp/precise64
这个版本是hashicorp官方推荐的Box,但是下载完成后自己发现,竟然没有Vim以及其他很多常用软件。于是,自己使用的是Centos官方推荐的centos/6 Box。
3. 网络设置:端口转发
官网写的配置十分简单,只需要配置Vagrantfile后,调用 vagrant reload即可。但是自己在使用过程中出现了:Virtualbox Guest Additions Version不匹配的问题,导致端口转发配置无法生效。错误截图如下:
网上找到的有两种方法没有解决这个问题:
1. 运行vboxguest-5.1.8 setup
2. 重新编译vboxguest
另外一种方法是使用Centos GUI界面,运行vboxguest,自己没有尝试。解决这个问题的方法是使用:vagrant plugin install vagrant-vbguest (老外写的一个Vagrant插件,专门解决不匹配问题),在花费多个小时后,终于完成端口转发配置! 截个图庆祝下:
总结及困扰
Vagrant确实是一个好的工具,但是在把它使用好,需要投入一定的时间研究。在使用过程中,自己发现Vagrant的Box阉割的比较厉害,好处是Box占用磁盘空间小了很多,坏处就是以后使用某个软件的时候,需要花费时间填坑。
附,参考资料:
1. https://www.vagrantup.com/docs/getting-started/boxes.html 【官方教程】
2. http://www.vagrantbox.es/ 【镜像列表】
0 0
- Vagrant使用【1】
- vagrant系列(1):使用vagrant在线/离线安装centos7
- vagrant 使用
- vagrant 使用
- vagrant入门教程--初识vagrant(1)
- Vagrant使用指南:Vagrant命令使用简介
- vagrant使用笔记
- 使用Vagrant練習環境佈署
- vagrant基本配置使用
- 开始使用vagrant
- 开始使用 Vagrant
- vagrant使用资料
- vagrant使用简介
- Vagrant简介和使用
- vagrant 安装与使用
- Vagrant安装和使用
- 使用VirtualBox + Vagrant打造属于自己的开发环境1
- vagrant 1.7.1 记录
- poj2656 Unhappy Jinjin
- 最近流行的12个笑话,好笑又有道理
- 【题】【贪心】NKOJ3827 火车运输
- C++内存分配浅析
- MySQL中配置参数的管理
- Vagrant使用【1】
- python 标准输入输出流
- 嵌入式C语言编程注意的点
- java笔记(一)Io
- 又一大波笑到肾抽筋,笑出六块腹肌的段子
- MyBatis入门
- Windows SSH虚拟机linux开发环境
- 使用QML编写舒尔特表小程序
- 数学概念的提出与演化