Vagrant初体验

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

要想使用Vagrant这个工具,首先需要安装Virtualbox,步骤如下:

  • 安装Virtualbox
  • 安装Vagrant
  • 启动vagrant服务
  • 连接到虚拟机

安装Virtualbox

进入Virtualbox官网,下载安装Virtualbox,下载后安装一直点下一步,没什么难度。

安装Vagrant

  • 进入Vagrant官网,下载自己对应操作系统的版本Vagrant,下载后安装一直点下一步,依然没什么难度
  • 测试Vagrant是否安装成功,在命令行输入vagrant,如果会弹出命令帮助界面,说明安装成功。

安装box

box其实就是某种操作系统的镜像文件,安装box有两种方式,一种是直接从vagrantcloud.com加载,一种是先将box从vagrantcloud.com下载下来,然后从本地加载。
1.从vagrantcloud.com加载命令为vagrant box add boxname
如下:
vagrant box add chef/centos-6.5
2.从本地加载box命令为vagrant box add rename url/name.box
如下:

yangzhiqiangdeMacBook-Pro:Documents yangzhiqiang$ vagrant box add mall /Users/yangzhiqiang/Documents centos_dev_mall.box

测试box是否安装成功

使用命令vagrant box list,查看是否有刚刚安装的box,如果有则说明安装成功,反正则没有。

Vagrant的使用

  • 初始化项目
    进入目标文件夹,使用命令vagrant init chef/centos-6.5,将项目初始化,初始化成功后,会提示初始化成功并生成一个Vagrantfile文件。
  • 启动vagrant
    同样是在目标文件夹,启动项目使用命令vagrant up这个命令,vagrant服务就已经被开启了。
  • 连接到虚拟机
    在目标文件夹中,使用vagrant ssh命令,能成功连接到vagrant虚拟机中。
  • 虚拟机网络配置
    电脑和虚拟机通信,比如在虚拟机上搭建了一个web服务器,需要在自己电脑上访问这个服务器,有三种方式:
    forwarded_port: 端口转发方式,比如在Vagarantfile里面配置了8080端口转发到80端口,那么在电脑上访问localhost:8080,就会自动转发到虚拟机的80端口
    config.vm.network "forwarded_port", guest: 9292, host:9292
    private_network:私有网络,为虚拟机指定一个IP地址,只能通过你电脑访问
    config.vm.network "private_network", ip: "192.168.33.10"
    public_network:公有网络,为虚拟机指定一个IP地址,可以通过其他设备访问
    config.vm.network "public_network"_

Vagrant常用命令

  • 查看列表:vagrant box list
  • 初始化项目:vagrant init boxname
  • 查看虚拟机状态:vagrant status
  • 添加box:vagrant box add rename url/name.box或者vagrant box add boxname
  • 开机:vagrant up
  • 连接到虚拟机:vagrant ssh
  • 暂停虚拟机:vagrant suspend
  • 恢复虚拟机:vagrant resume
  • 关机:vagrant halt
  • 重启虚拟机:vagrant reload

另外,移除虚拟机box的时候,如果有多个相同名字不同版本的box,需要指定版本删除,命令如下:
vagrant box remove coreos-alpha --box-version=745.1.0

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 开发需要在各种系统上进行开发任务,运维则需要在各种系统上学习工具使用。因此,虚拟机恐怕也是 IT 人员最常使用的工...
    李广慧阅读 5,567评论 3 24
  • 1,介绍Vagrant 我们做web开发的时候经常要安装各种本地测试环境,比如apache,php,mysql,r...
    meng_philip123阅读 2,537评论 0 12
  • Vagrant学习笔记 简介 vagrant用于快速创建基于VirtualBox、VMware、AWS的虚拟机,提...
    200cc阅读 8,429评论 0 15
  • P68,第3章:吸引力——P104 吸引力的基础:一种奖赏 人与人之间产生吸引力最基本的假设是:他人的出现对于我们...
    空云儿阅读 517评论 0 1
  • 小A118天了 说实话,这个小生命的诞生打乱了我原本幻想的生活轨迹。我脑海中二字打头的最后几年应该是这样的,去想去...
    _西禾_阅读 1,016评论 4 4