前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vagrant打造跨平台可移动的开发环境

vagrant打造跨平台可移动的开发环境

作者头像
Mandy的名字被占用了
发布2020-05-19 16:29:30
7550
发布2020-05-19 16:29:30
举报

vagrant是什么?

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

使用vagrant有什么好处?

按照上面针对vagrant的解释,说直白点就是一个虚拟机,我们在者虚拟机中配置一些东西,可以打包,当我们再次使用该虚拟机时,直接使用vagrant将这个已经打包好的虚拟机加载进来,之前的配置直接使用。实现快速开发。

安装vagrant需要准备什么?

virtualbox、vagrant、终端工具(我这里使用的是iterm2)、镜像文件(我这里以我ubuntu为例)

virtualbox下载地址:https://www.virtualbox.org/wiki/Downloads

vagrant 下载地址:https://www.vagrantup.com/downloads.html

iterm2 下载地址:

http://www.iterm2.com/downloads.html

ubuntu 下载地址:

https://pan.baidu.com/s/1kU8fUlD

如何安装?

第一步直接点击安装vagrat,安装好后,创建一个目录,我这里以我的mac的~目录为例,我在这下面创建了一个vagrant目录。

第二步安装好vagrant之后,将下载的ubuntu镜像拷贝到vagrant目录下面即可。

第三步开始安装。

// 安装ubuntu镜像

vagrant box add ubuntu ubuntu14.04

- - ubuntu 是安装的虚拟机名称

- - ubuntu14.04 是我们的镜像文件

// 初始化配置

vagrant init

- - 此时,会在vagrant的目录下面创建一个Vagrant的文件,这个文件主要是我们针对虚拟机的配置文件,后面会提及。

// 开启虚拟机

vagrant up

// 登录虚拟机

vagrant ssh

这样,我们就登录到ubuntu系统中去了,我们就随便玩吧!这里我们将系统源切换为阿里云的系统源内容

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak ,进行备份。sudo vim /etc/apt/sources.list 将里面的内容全部修改为下面链接的内容。https://github.com/bruceqqq/my_project/tree/master/linux/ubuntu,替换之后使用sudo apt-get update进行更新源。

ubuntu高级配置

目录共享:我们初始化配置的时候会产生vagrant一个文件,我们的所有配置就在这文件中配置即可。打开这个文件写入如下内容。共享目录主要是为了本地和虚拟机的内容实时同步。

config.vm.synced_folder "本机目录", "ubuntu目录", type: "nfs"

config.vm.network "private_network", ip: "静态ip" 这里的静态ip主要是便于访问服务器,可以任意填写,当我们配置了php环境,直接使用该IP访问即可。配置示例如下,192.168.1.31。

端口转发:将主机的访问端口转换为虚拟机的端口,这里以ubuntu的nginx的8088端口为例。我配置如下

config.vm.network "forwarded_port", guest: 80, host: 8080。前面的80是我本机访问时的端口,8088是服务器的端口号。

在我们配置完之后,一定得使用vagrant reload进行初始化一次,为什么我们要使用vagrant的配置文件来配置,上面提及到的端口转化,我们可以使用图形化界面操作的,但是有一个缺点,当我们的虚拟机进行重启了之后,这个配置就的重新配置一次。至于怎么使用图形化配置,请参考http://www.cnblogs.com/qqblog/p/6892165.html

打包分发?

打包分发就是将我们已经配置好的虚拟主机,打包为一个.box的文件,以后我们使用的时候,直接安装好vagrant,将该镜像文件加载进来即可使用。

vagrant package --output ubuntu.box(这里为你打包的名,只要是.box结尾即可)

vagrant常用命令

vagrant box list : 查看当前虚拟机

vagrant box add 虚拟机名 镜像文件 : 添加一个虚拟机

vagrant box remove 虚拟机名称 : 移除虚拟机

vagrant init 初始化一个虚拟机

vagrant up 开启虚拟机

vagrant ssh 登录虚拟机

vagrant suspend 挂起虚拟机

vagrant reload 重启虚拟机

vagrant halt 关闭虚拟机

vagrant status查看虚拟机状态

vagrant destory 删除虚拟机 

更多命令参考官方文档:https://www.vagrantup.com/docs/cli/box.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-08-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 卡二条的技术圈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
轻量应用服务器
轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门开源软件打包实现一键构建应用,提供极简上云体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档