关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » HTML5 »使用 Vagrant 打造跨平台开发环境

    使用 Vagrant 打造跨平台开发环境

    2015-03-09 00:00:00 出处:闫肃的博客
    分享

    Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用,“代码在我机子上运行没有问题”这种说辞将成为历史。

    我们可以通过 Vagrant 封装一个 Linux 的开发环境,分发给团队成员。成员可以在自己喜欢的桌面系统(Mac/Windows/Linux)上开发程序,代码却能统一在封装好的环境里运行,非常霸气。

    安装步骤

    1. 安装 virtualBox

    虚拟机还是得依靠 VirtualBox 来搭建,免费小巧。
    下载地址:https://www.virtualbox.org/wiki/Downloads

    * 虽然 Vagrant 也支持 VMware,不过 VMware 是收费的,对应的 Vagrant 版本也是收费的

    2. 安装 Vagrant

    下载地址:http://downloads.vagrantup.com/ 根据提示一步步安装。

    此外,还得下载官方封装好的基础镜像:
    Ubuntu precise 32 VirtualBox http://files.vagrantup.com/precise32.box
    Ubuntu precise 64 VirtualBox http://files.vagrantup.com/precise64.box

    假如你要其他系统的镜像,可以来这里下载:http://www.vagrantbox.es/

    * 鉴于国内网速,我们将下载镜像的步骤单独剥离出来了

    3. 添加镜像到 Vagrant

    假设我们下载的镜像存放路径是 ~/box/precise64.box,在终端里输入:

    $ vagrant box add hahaha ~/box/precise64.box

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

    4. 初始化开发环境

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

    $ cd ~/dev  # 切换目录
    $ vagrant init hahaha  # 初始化
    $ vagrant up  # 启动环境

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

    $ vagrant ssh  # SSH 登录
    $ cd /vagrant  # 切换到开发目录,也就是宿主机上的 `~/dev`

    ~/dev 目录对应虚拟机中的目录是 /vagrant

    Windows 用户注意:Windows 终端并不支持 ssh,所以需要安装第三方 SSH 客户端,比如:Putty、Cygwin 等。

    5. 其他设置

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

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

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

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

    6. 打包分发

    当你配置好开发环境后,退出并关闭虚拟机。在终端里对开发环境进行打包:

    $ vagrant package

    打包完成后会在当前目录生成一个 package.box 的文件,将这个文件传给其他用户,其他用户只要添加这个 box 并用其初始化自己的开发目录就能得到一个一模一样的开发环境了。

    7. 常用命令

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

    更多内容请查阅官方文档 http://docs.vagrantup.com/v2/cli/index.html

    8. 注意事项

    使用 Apache/Nginx 时会出现诸如图片修改后但页面刷新仍然是旧文件的情况,是由于静态文件缓存造成的。需要对虚拟机里的 Apache/Nginx 配置文件进行修改:

    # Apache 配置添加:
    EnableSendfile off
    
    # Nginx 配置添加:
    sendfile off;
    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    正版 Windows 11产品密钥怎么查找/查看?

    还有3个月,微软将停止 Windows 10 的更新

    Windows 10 终止支持后,企业为何要立即升级?

    Windows 10 将于 2025年10 月终止技术支持,建议迁移到 Windows 11

    Windows 12 发布推迟,微软正全力筹备Windows 11 25H2更新

    Linux 退出 mail的命令是什么

    Linux 提醒 No space left on device,但我的空间看起来还有不少空余呢

    hiberfil.sys文件可以删除吗?了解该文件并手把手教你删除C盘的hiberfil.sys文件

    Window 10和 Windows 11哪个好?答案是:看你自己的需求

    盗版软件成公司里的“隐形炸弹”?老板们的“法务噩梦” 有救了!

    IT头条

    公安部:我国在售汽车搭载的“智驾”系统都不具备“自动驾驶”功能

    02:03

    液冷服务器概念股走强,博汇、润泽等液冷概念股票大涨

    01:17

    亚太地区的 AI 驱动型医疗保健:2025 年及以后的下一步是什么?

    16:30

    智能手机市场风云:iPhone领跑销量榜,华为缺席引争议

    15:43

    大数据算法和“老师傅”经验叠加 智慧化收储粮食尽显“科技范”

    15:17

    技术热点

    商业智能成CIO优先关注点 技术落地方显成效(1)

    用linux安装MySQL时产生问题破解

    JAVA中关于Map的九大问题

    windows 7旗舰版无法使用远程登录如何开启telnet服务

    Android View 事件分发机制详解

    MySQL用户变量的用法

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。