关键词:
原文:http://blog.csdn.net/hel12he/article/details/51069269
一个月没有更新过了。三月份终于把设计模式看完了,自己也写了一些设计模式的基础代码。也用到了几个设计模式到自己的项目中。
今天当然不是来说设计模式的,先说说这段时间学到的一个新东西。vagrant,其实之前在用laravel的时候,就知道了这么个东西,一直觉得xampp挺好呀,干嘛还要费神去搞这么个东西呢?
最近研究了一下,一下子就被其美貌所迷惑,不能自拔,今天先讲讲vagrant的基本知识,后续陆续会更新基于vagrant搭建的php7环境(box我都已经制作好,上传到百度云了,就等分享)、Go环境、Hadoop等。
实际上Vagrant只是一个让你可以方便设置你想要的虚拟机的便携式工具,它底层支持VirtualBox、VMware甚至AWS作为虚拟机系统,本书中我们将使用VirtualBox来进行说明,所以第一步需要先安裝Vagrant和VirtualBox。
安装环境:mac
注:windows环境下,基本一致
安装VirtualBox
直接来到官网 https://www.virtualbox.org/wiki/Downloads 点击下载最新的virtualbox,双击安装,一路傻瓜化完成。
安装Vagrant
网上有说什么使用gem命令来安装的,建议大家别进这个坑了,直接到官网 https://www.vagrantup.com/downloads.html 下载最新的vagrant,然后双击安装,也是一路傻瓜化,就不说。
在windows下安装vagrant,为了写入相应配置到环境变量,可能会要求重新启动一下系统。
如何配置Vagrant
下载一个合适的box
进行完以上步骤后,就需要考虑我们的虚拟机需要使用什么操作系统了,我这里会以CentOs7.0为例。在以前使用vm的过程中,我们需要自己去下载镜像,然后进行相关的安装,设置系统等等操作。而vagrant的开源社区,提供了很多已经打包好的操作系统,在vagrant的世界里被称为box。在http://www.vagrantbox.es/ 这里你可以找到你想要的操作系统box,当然你也可以自己制作一个。后续教程会讲到,这里就不多说。
完成一个box的安装
我的开发机是Mac,所以我建立了如下的开发环境目录:
$ /Users/helei/vagrant $ cd /Users/helei/vagrant
本来,vagrant提供的在线安装,非常便利,但是无奈我国有非常NB的gfw,我为了速度,就先FQ出去把box下载到本地,然后再进行安装。
box链接:https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box
$ vagrant box add {title} {url} $ vagrant init {title} $ vagrant up
vagrant box add 是添加box的命令
其中{title}可以自行设置,我这里使用的是 centos7 ,{url}是下载到本地box路径。我的路径是:/Users/helei/vagrant/centos-7.0-x86_64.box
下面把一些命令执行后的输出进行展示,方便大家比对:
# 安装box $ vagrant box add CentOs7 /Users/helei/vagrant/centos-7.0-x86_64.box
输出内容:
Downloading or copying the box... Extracting box...te: 47.5M/s, Estimated time remaining: --:--:--) Successfully added box ‘base‘ with provider ‘virtualbox‘!
box中的镜像文件被放到了:/Users/helei/.vagrant.d/boxes/,如果在window系统中应该是放到了: C:\Users\当前用户名.vagrant.d\boxes\目录下。
# 如果是才add 的box,就必须执行本步骤,初始化一次后,以后启动系统,就不需要执行本步骤。 $ vagrant init CentOs7
输出内容:
A `Vagrantfile` has been placed in this directory. You are now ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on `vagrantup.com` for more information on using Vagrant.
这样就会在当前目录生成一个 Vagrantfile的文件,里面有很多配置信息,后面我在慢慢说,默认不做任何配置改动,也是可以启动系统的。
# 启动系统 $ vagrant up
输出内容:
Bringing machine ‘default‘ up with ‘virtualbox‘ provider... [default] Importing base box ‘base‘... [default] Matching MAC address for NAT networking... [default] Setting the name of the VM... [default] Clearing any previously set forwarded ports... ...
ssh链接到安装的虚拟机
经过以上操作后,完成了虚拟机的安装,现在需要登录上虚拟机,进行操作。链接很简单,可以使用第三方(xshell等)shell工具或系统自带的,进行登录
在系统中,如mac,可直接使用 vagrant ssh
来完成链接。或者使用第三方如xshell,ip地址是:localhost,端口,需要观察,映射的22端口是多少。一般是2200 或者2222
用户名与密码均是: vagrant
vagrant的命令详解
命令 | 作用 |
---|---|
vagrant box add | 添加box的操作 |
vagrant init | 初始化box的操作,会生成vagrant的配置文件Vagrantfile |
vagrant up | 启动本地环境 |
vagrant ssh | 通过 ssh 登录本地环境所在虚拟机 |
vagrant halt | 关闭本地环境 |
vagrant suspend | 暂停本地环境 |
vagrant resume | 恢复本地环境 |
vagrant reload | 修改了 Vagrantfile 后,使之生效(相当于先 halt,再 up) |
vagrant destroy | 彻底移除本地环境 |
vagrant box list | 显示当前已经添加的box列表 |
vagrant box remove | 删除相应的box |
vagrant package | 打包命令,可以把当前的运行的虚拟机环境进行打包 |
vagrant plugin | 用于安装卸载插件 |
vagrant status | 获取当前虚拟机的状态 |
vagrant global-status | 显示当前用户Vagrant的所有环境状态 |
下一篇,主要讲vagrant的配置,已经如果通过配置文件,实现多台虚拟机的启动,可以用这种方式搭建hadoop的环境额。
vagrant初识与安装(代码片段)
...下载最新的virtualbox,双击安装,一路傻瓜化完成。安装Vagrant网上 查看详情
vagrant初识(代码片段)
vagrant是部署虚拟开发环境的工具,他可以简化虚拟机配置,为我们搭建和配置轻量级可重用,可移植的开发环境。他能帮助开发人员迅速的构建一个开发环境,帮助测试人员构建测试环境。 vagrant支持VirtualBox,VMware,AWS... 查看详情
1vagrant初识
1.简介vagrant是一个命令行虚拟机管理工具,需借助virtualbox、vmware、hyper-v等虚拟机工具,可以安装在centos、macorwindows环境下,利用它可以快速部署虚拟化的测试环境2.安装virtualboxhttp://download.virtualbox.org/virtualbox/5.1.4/VirtualBox-5.1.4-11... 查看详情
docker深入浅出系列|容器初体验(代码片段)
...要用Docker事例什么是容器镜像和容器容器与虚拟机的区别Vagrant与Docker的区别Docker引擎和架构Docker的镜像分层VirturalBox和Docker如何搭配使用主体机器如何与客体机器上的容器进行通信环境搭建与实战使用Vagrant管理虚拟机创建Centos7... 查看详情
vagrant搭建虚拟化开发环境初识(代码片段)
Vagrant简介 Vagrant是一款用来构建虚拟开发环境的工具,它是用来管理虚拟机的,同时也非常适合php/python/ruby/java这类语言开发web应用,“代码在我机子上运行没有问题”这种说辞将成为历史。我们可以通过Vagrant封装一个Linux... 查看详情
[部署开发环境][1vagrant]vagrant部署开发环境--安装vagrant
#安装教程#安装vagrant教程#准备-windows操作系统-VirtualBox-5.1.18-114002-Win,-vagrant_1.9.3.msi-镜像文件https://atlas.hashicorp.com/ubuntu/boxes/trusty64/versions/20161122.0.0/providers/virtualbox.box#安装流程-1先后安装vagrant, 查看详情
一.django初识(代码片段)
1.创建django项目:[vagrant@CentOS7vagrant]$django-adminstartprojectdevops[vagrant@CentOS7vagrant]$treedevops/devops/ 项目目录/项目容器├──devops 项目中实际的python包│ ├──__init__.py 空文件,告 查看详情
vagrant-安装教程及常见问题(代码片段)
前言:Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它的主要意义是让所有开发人员都使用和线上服务器一样的环境,本质上和你新建一个虚拟机。 那最常见的,正常我们是怎么开发呢,大... 查看详情
windows下vagrant的安装使用
vagrant是简便虚拟机操作的一个软件,而使用虚拟机是为了开发环境与生产环境一致(很多开发环境为windows而生产环境为linux),不至于出现在开发环境正常而移步到正式生产环境时出现各种问题,vagrant通过共享文件,可以实现... 查看详情
vagrant安装小结(代码片段)
...次写自己的博客,仅仅做一个学习的记录!其实vagrant早已安装好的,但是是认识的一学姐帮我装好的。寒假使用时出现问题,无奈中只好自己重装!教程网上挺多的,如果自己装,特别是像我这样第一... 查看详情
docker学习(03)--安装部署2
Vagrant与Docker对比 Vagrant和Docker都是虚拟化技术。Vagrant是基于Virtualbox的虚拟机来构建你的开发环境。Docker则是基于LXC(LXC)轻量级容器虚拟技术。虚拟机之于容器虚拟技术相当于进程和线程。虚拟机内可以包含很多容器,正如... 查看详情
使用vagrant在命令行快速创建虚拟机
一、Vgrant的安装Vagrant是一个跨平台的虚拟机管理工具,我们以Deepin20.2.3为例,安装和使用Vagrant。我们在这里所说的Vagrant包括Vagrant工具本身和虚拟引擎工具VirtualBox。1.安装Vagrant安装vagrant时,使用的VirtualBox版本必须要得到对应Va... 查看详情
vagrant系列博客(代码片段)
1.添加box从中科大的网站下载了源http://mirrors.ustc.edu.cn/vagrantboxadd[自定义box名字][镜像文件]例子: vagrantboxaddubuntu/14.04trusty-server-cloudimg-amd64-vagrant-disk1.box创建通过源创建ubuntu镜像查看boxvagrantboxlist 查看详情
vagrant安装小结(代码片段)
...次写自己的博客,仅仅做一个学习的记录!其实vagrant早已安装好的,但是是认识的一学姐帮我装好的。寒假使用时出现问题,无奈中只好自己重装!教程网上挺多的,如果自己装,特别是像我这样第一... 查看详情
macos☀️vagrant使用parallelsdesktop安装oracle数据库☀️(代码片段)
Vagrant玩转macOS系列🌲前言❄️一、环境准备❄️1、下载Vagrantbox2、安装Paralles插件3、Vagrant添加box4、配置Vagrantfile5、准备安装介质6、编写Vagrantfile中定义的Shell脚本❤️二、Vagrant启动一键安装Oracle❤️1、😏很简单,... 查看详情
macos☀️vagrant使用parallelsdesktop安装oracle数据库☀️(代码片段)
Vagrant玩转macOS系列🌲前言❄️一、环境准备❄️1、下载Vagrantbox2、安装Paralles插件3、Vagrant添加box4、配置Vagrantfile5、准备安装介质6、编写Vagrantfile中定义的Shell脚本❤️二、Vagrant启动一键安装Oracle❤️1、😏很简单,... 查看详情
使用vagrant搭载lamp环境遇到的一系列问题
...(我用来搭建lamp),而且我又有点系统洁癖,决定搭载vagrant来玩玩。 如何搭载在网上一搜一大把,我就不重复了,我的是vagrant2+ubuntu/trusty64+virtualbox有需要的同学戳下: https://segmentfault.com/a/11900000... 查看详情
确定安装了哪些netframework版本
以下内容均出自Vagrant作者(MitchellHashimoto)与Docker作者(SolomonHykes)在stackoverflow上面一个问题讨论。在这个问题中,双方阐述了vagrant和docker的特点和使用范围,对于深入理解vagrant和docker很有意义,因此笔者翻译出来,以供大家讨... 查看详情