Mac OS 下安装 Vagrant-阿里云开发者社区

开发者社区> javaedge> 正文

Mac OS 下安装 Vagrant

简介:
+关注继续查看

Vagrant是一款用来构建虚拟开发环境的工具,它其实算是一个跨平台的虚拟机管理工具

1 安装

1.1 安装Vagrant

https://www.vagrantup.com/downloads.html

  • 下载好pkg文件后,下一步安装即可
    安装成功

1.2 安装Virtualbox

Vagrant依赖现有的虚拟机软件来管理虚拟机,如Virtualbox, Vmware Fusion, Parallel Desktop等,其中最方便的是VirtualBox
https://www.virtualbox.org/

  • 同样下载好后直接安装
    https://www.virtualbox.org/wiki/Downloads

2 使用

vagrant init        # 初始化
vagrant up          # 启动虚拟机
vagrant halt        # 关闭虚拟机
vagrant reload      # 重启虚拟机
vagrant ssh         # SSH 至虚拟机
vagrant status      # 查看虚拟机运行状态
vagrant destroy     # 销毁当前虚拟机

vagrant suspend         # 挂起当前虚拟机
vagrant resume          # 恢复被挂起的vm
vagrant box list        # 列出所有box列表

vagrant box remove {base name}  # 删除

vagrant destroy         # 停止当前正在运行的虚拟机并销毁所有创建的资源
vagrant package         # 把当前的运行的虚拟机环境进行打包,可用于分发开发环境
vagrant plugin          # 安装卸载插件
vagrant provision       # 设置基本的环境,进一步设置可以使用Chef/Puppet进行搭建
vagrant ssh-config      # 输出ssh连接的一些信息
vagrant status          # 获取虚拟机状态
vagrant version         # 获取vagrant的版本

2.1下载启动Box

在Vagrant中,box是一种打包好的镜像,通过这个镜像,可以生成相应的虚拟机。box可以通过官方网站下载,也可以自己制作,在团队内分享。

官方的Box可以在创建时自动下载。例如以下步骤

2.2 添加镜像到 Vagrant

  • 下载的镜像存放路径是 ~/box/centos.box
    镜像存放路径
  • 在终端里输入
    vagrant box add hahaha ~/box/centos.box

hahaha 是我们给这个 box 命的名字,~/box/centos.box 是 box 所在路径

2.3 初始化开发环境

创建一个开发目录(比如:~/centos),也可以使用已有的目录,切换到开发目录里,用 hahaha 镜像初始化当前目录的环境

cd ~/centos  # 切换目录
$ vagrant init hahaha  # 初始化

vagrant up  # 启动环境
  • 所创建VM 的名字

  • 通过 VB 观察已启动

你会看到终端显示了启动过程,启动完成后,我们就可以用 SSH 登录虚拟机了,剩下的步骤就是在虚拟机里配置你要运行的各种环境和参数了
vagrant ssh
sudo yum update

  • 退出
    exit
  • status 获取虚拟机状态
  • halt 关闭虚拟机

  • destroy 销毁当前虚拟机
    不演示了...

2.4 其他设置

Vagrant 初始化成功后,会在初始化的目录里生成一个 Vagrantfile 的配置文件,可以修改配置文件进行个性化的定制

Vagrant 默认是使用端口映射方式将虚拟机的端口映射本地从而实现类似 http://localhost:80 这种访问方式,这种方式比较麻烦,新开和修改端口的时候都得编辑。
相比较而言,host-only 模式显得方便多了
打开 Vagrantfile,将下面这行的注释去掉(移除 #)并保存:

config.vm.network :private_network, ip: "192.168.33.10"

重启虚拟机,这样我们就能用 192.168.33.10 访问这台机器了,你可以把 IP 改成其他地址,只要不产生冲突就行。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
+关注
javaedge
关注公众号:JavaEdge,后台回复面试,领取更多大厂求职资源。曾在百度、携程、华为等大厂搬砖,专注Java生态各种中间件原理、框架源码、微服务、中台等架构设计及落地实战,只生产硬核干货!
2317
文章
1
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载