缘由:

在网上看到斌哥,爽神都写了关于vagrant的博客,都在说很强大,所以很好奇这玩意怎么个强大,然后也就自己来一发玩玩看看。

真实缘由:

说实话是电脑配置太低,win7系统,3G内存,08年的品牌机,所以扛不住Vmware的,以前也是一直在用Vmware,但是面对面前的这台电脑,也只能呵呵了~

期间曾经用过一段Ubuntu,由于工作原因,需要实时QQ进行交流,所以又呵呵了~

至于大家说什么wine+QQ,什么个人开发的Ubuntu上可运行的QQ,我又只能呵呵了~

个人感受:

感觉想当年玩过的H3C、Cisco的模拟器一样,Dos窗口下来完成一切,实在是有种黑的不能再黑的赶脚~

vagrant的打包功能类似Vmware的克隆,打包之后可以拿给其他人去用,统一的平台,统一的软件结构,作为开发测试的一个公共平台实在是极好的~

重新封包的box拿到其它机器上去运行,依旧会存在网卡重新生成的情况,需要手动清除(仅针对使用 private_network的模式)

唯一的不同点就是Vmware的克隆出来一个虚机很大很大,而vagrant重新封包依旧是小巧玲珑~

关于vagrant:

Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

详细操作步骤:

工具及环境介绍:

工具及环境 版本 下载地址
宿主机环境 win7 x64 旗舰版 http://msdn.itellyou.cn/
VirtualBox VirtualBox-4.3.12-93733-Win https://www.virtualbox.org/
vagrant vagrant_1.6.3 http://www.vagrantup.com/
box CentOS-6.3-x86_64-minimal.box http://www.vagrantup.com/
xshell xshell_4.0.0131.1397032097 http://www.netsarang.com/download/main.html

亮点来了,请仔细看额:

1、安装VirtualBox

(略)

2、安装vagrant

3、下载box

4、安装xshell

5、正式开始进行操作~

  • 新建一个文件夹作为工作目录

  • 打开一个dos窗口,初始化该目录,然后导入box

    Note: 导入box的默认指令

    vagrant box add name uri

但是由于直接制定uri的话,就相当于在线下载了,那速度是相当的慢啊,所以这里我就事先下载好   了,直接导入即可

1
2
vagrant init
vagrant box add centos6.3 j:\迅雷下载\CentOS-6.3-x86_64-minimal.box

  • 修改Vagrantfile配置文件,该文件管控着虚拟机的运行

    我这里比较懒,直接网上找了一个相关的配置文件,修改了下,就直接用了

    文件来源:http://blog.sina.com.cn/s/blog_804327560101eiyk.html

修改后的文档:启用了四个虚拟机,内存均为256M

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# -*- mode: ruby -*-
# vi: set ft=ruby :
app_servers = {
    :http => '192.168.58.20',
    :php => '192.168.58.21'
}
Vagrant.configure("2") do |config|
    config.vm.box = "centos6.3"
    config.vm.define :haproxy do |haproxy_config|
        haproxy_config.vm.network :private_network, ip: "192.168.58.10"
        haproxy_config.vm.network :forwarded_port, guest: 80, host: 8080
        config.vm.provider :virtualbox do |vb|
            vb.name = "haproxy"
            vb.customize ["modifyvm", :id, "--memory", "256"]
        end
    end
    app_servers.each do |app_server_name, app_server_ip|
        config.vm.define app_server_name do |app_config|
            app_config.vm.hostname = "#{app_server_name.to_s}.vagrant.internal"
            app_config.vm.network :private_network, ip: app_server_ip
           # app_config.vm.synced_folder "../app", "/opt/app"
            app_config.vm.provider "virtualbox" do |vb|
                vb.name = app_server_name.to_s
                vb.customize ["modifyvm", :id, "--memory", "256"]
            end
        end
    end
    config.vm.define :redis do |redis_config|
        redis_config.vm.hostname = "redis.vagrant.internal"
        redis_config.vm.network :private_network, ip: "192.168.58.30"
        redis_config.vm.provider "virtualbox" do |vb|
            vb.name = "redis"
            vb.customize ["modifyvm", :id, "--cpuexecutioncap", "50"]
            vb.customize ["modifyvm", :id, "--memory", "256"]
        end
    end
end

  • 开启虚拟机,这里你可以完全开启,也可以只开启一台

    PS: 第一次开启的时候,建议一台一台的开启,这样的话方便记录ssh连接端口号(个人偏好使用xshell)

  • 使用xshell链接测试

    连接账号:vagrant

    连接密码:vagrant

    su到root下密码:vagrant

  • 常用命令

1
2
3
4
5
6
vagrant box list             # 列出当前导入的box
vagrant destory              # ***machine
vagrant box remove [name]    # 移除box
vagrant up [name]            # 启动machine                 
vagrant halt [name]          # 关闭machine 
vagrant status [name]        # 查看machine的状态

  • 打包

关闭当前机器,然后打包(我这里为haproxy这台机器安装了epel源)

写到这里好像要打完收工了,还有啥~

额,还有好多知识没有说

vagrant的几种网卡类型

使用过程中碰到的问题,后续在更新吧~

使用感受:

搭建了一个haproxy + tomcat的环境,三台机器全开,占用系统资源也不是很大,跑起来绝对没问题,也挺流畅~

吐槽大会:这玩意用起来也就那么回事,是蛮方便的,但是对于程序猿来说也是一个头大的事情,而且Dos窗口那么不和谐~ 等到图形界面和VirtualBox完全整合了的话,估计就是一键点击下的事了,不过到那个时候又不知道会有什么新的工具出来,总的来说,能用,有亮点,但是亮点不是完全超越性的~

本文转自lovelace521 51CTO博客,原文链接:http://blog.51cto.com/lovelace/1423343,如需转载请自行联系原作者

vagrant打造自己的开发环境~~我也来一发相关推荐

  1. mac搭建python开发环境_Mac打造python2 python3开发环境

    最新版的MacOS Sierra默认带的python环境仍然为2.7.10,本文将介绍使用Brew安装python3.5并做简单的配置,打造python2,python3共存的开发环境 直接尝试bre ...

  2. 0基础用vagrant 快速构建larval开发环境 (我杨某人尽力描述了,都有从0介绍)

    vagrant 快速构建larval开发环境 历史背景 今天闲来无事又从头写了一遍,这玩意能干嘛?从0开始,5分钟自动化部署larval框架项目(取决于你网速),无论是windows,mac,linu ...

  3. notepad 配置c语言开发环境,用notepad++打造c/c++开发环境

    用notepad++打造c/c++开发环境 (2014-01-07 11:21:18) 标签: c/c notepad 开发 it 本文介绍如何使用开源软件notepad++,来打造c/c++开发环境 ...

  4. 利用vagrant快速搭建rails开发环境

    为什么80%的码农都做不了架构师?>>>    Deprecated 前言 当我们学习一门新的语言或技术的时候,最麻烦或比较浪费时间的事情就是搭建开发环境.而搭建开发环境与我们将要学 ...

  5. macbook pro python开发_Mac打造python2 python3开发环境

    最新版的MacOS Sierra默认带的python环境仍然为2.7.10,本文将介绍使用Brew安装python3.5并做简单的配置,打造python2,python3共存的开发环境 直接尝试bre ...

  6. win10卸载git_打造 Win10 终极开发环境

    当我们在 Windows 平台上进行程序开发的时候,会遇到各种各样让人讨厌的问题,有时候还必须转到 Linux 环境下进行开发.然而,通过本文你将可以解决你在 Windows 平台上开发遇到的所有问题 ...

  7. 打造 Win10 终极开发环境

    当我们在 Windows 平台上进行程序开发的时候,会遇到各种各样让人讨厌的问题,有时候还必须转到 Linux 环境下进行开发.然而,通过本文你将可以解决你在 Windows 平台上开发遇到的所有问题 ...

  8. code::blocks打造自己的开发环境

    打造自己环境 使用说明: 1.可以自己写Makefile: 在Project的属性中指定使用custom makefile即可.和visual studio一样,可以定义很多编译和link过程中的参数 ...

  9. 用Android-X86和VMware打造高性能Android开发环境

    不知道有多少Android开发着对Android虚拟机的那悲剧的性能有意见,反正我的看法是:那速度实在是太坑爹了! 为什么Android虚拟机比iOS和WP7的虚拟机要慢很多呢?原因如下: 1. An ...

最新文章

  1. centos7 df 命令卡死
  2. hibernate版本_Myeclipse 2020.5 版本首发!支持 Java14
  3. maven -Dmaven.skip.test=true 和 -DskipTests=true的区别
  4. 深度学习之基于Tensorflow2.0实现ResNet50网络
  5. 用python进行自然语言处理_Python自然语言处理示例:SVM和贝叶斯分类
  6. android布局1
  7. Java中Integer.parseInt()用法
  8. C++小型公司管理系统
  9. ai合成迪丽热巴下海_丽热巴被富家哥求婚,男方坚持示爱九个月,当众下跪赠女方豪车...
  10. 云消防大数据_消防云大数据app
  11. django开发 遇到的问题解决
  12. 计算机网络课程设计即时通讯,计算机网络课程设计报告-基于LAN的即时通信软件.doc...
  13. 中兴智能视觉大数据报道:人脸识别画上浓妆也不耽误识别
  14. 【文本匹配】Question Answering论文
  15. Visio2003 下载
  16. Spark入门基本操作
  17. 服务器安装esxi系统
  18. 面向对象编程思想详解汇总
  19. Dev C++ 英文模式改成中文模式
  20. matlab fminsearch 原理,Matlab利用fminsearch实现参数估计

热门文章

  1. CSS精粹之布局技巧
  2. CSS3新增-属性(长度颜色背景)选择器-盒子模型
  3. 探索MicroPython(四)--传感器应用
  4. Function(函数)
  5. 7-87 吉老师的回归 (15 分)
  6. python小测试1答案_测试1:Python 基本语法(选择题
  7. 云服务器拷贝文件大小,如何从云服务器上拷贝大文件
  8. kafka调试工具kafkacat的使用
  9. python数字图像处理(5):图像的绘制
  10. win 10配置安装iis