资讯专栏INFORMATION COLUMN

VirtualBox + Vagrant(统一开发环境)

xiangzhihong / 2325人阅读

团队开发中,每个人都有自己擅长的集成环境,比如WAMP、AppServ、XAMPP,正是因为这些环境不统一,完成任务提交代码后,每当测试出BUG的时候,都会有 “代码在我机子上运行没有问题” 的说辞。

那么问题来了,如何解决这个问题?


如何统一开发环境?

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

Vagrant 的好伙伴

VirtualBox :号称是最强的免费虚拟机软件和VM类似。

不仅具有丰富的特色,而且性能也很优异。

如何安装?

安装VirtualBox:

网址:https://www.virtualbox.org/wi...

安装Vagrant:

网址:http://downloads.vagrantup.com/

下载系统镜像:

网址:http://www.vagrantbox.es/

按照顺序,一个个安装即可~

具体操作如下:

添加镜像到Vagrant:

  //镜像的存放位置为/home/box/centos65.box

  cd/home/box/

  vagrant box add centosbox centos65.box

初始化开发环境:

  vagrant init centosbox    #初始化

  vagrant up                #启动环境

SSH登陆:

  利用Xshell、Putty、SecureCRT等登录。

  Ip : 127.0.0.1

  Port : 2222

  Username : root

  Password : vagrant
常用配置

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

配置IP:

config.vm.network :private_network, ip: “192.168.33.10”[去掉#]

你可以把IP改成其他地址,只要不产生冲突就行。

配置同步目录:

config.vm.synced_folder “../data”, “/vagrant_data” [去掉#,修改为下面]

config.vm.synced_folder “/home/web/www”, “/data/www“

/home/web/www:本地目录
/data/www: Linux服务器目录

配置虚拟内存:

在文件结尾end字符前添加下面一段:

config.vm.provider :virtualbox do |vb|

      vb.customize ["modifyvm", :id, "--memory", "2048"]

end

//温馨提示:修改配置后 记得 重启虚拟机。

打包分发:

当你配置好开发环境后,退出并关闭虚拟机。

  在终端里对开发环境进行打包:

  vagrant package

  //打包完成后会在当前目录生成一个package.box的文件,

  //将这个文件传给其他用户,

  //其他用户只要添加这个box并用其初始化自己的开发目录,

  //就能得到一个一模一样的开发环境了。
常用命令
  vagrant init #初始化

  vagrant up #启动虚拟机

  vagrant halt #关闭虚拟机

  vagrant reload #重启虚拟机

  vagrant status #查看虚拟机运行状态

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/21863.html

相关文章

  • 开发运维(一)vagrant

    摘要:成员可以在自己喜欢的桌面系统上开发程序,代码却能统一在封装好的环境里运行,非常霸气。打包分发当你配置好开发环境后,退出并关闭虚拟机。 博文参考 http://rmingwang.com/vagrant-commands-and-config.html https://www.vagrantup.com/docs/virtualbox/configuration.html https:/...

    FullStackDeveloper 评论0 收藏0
  • Laravel学习笔记一-开发环境搭建

    摘要:配置需要一个来用于与虚拟机进行连接,默认假定这个密钥会被放在文件夹下。三使用管理项目版本使用可以对我们的代码进行版本控制,如果万一误删了代码想回到之前的情况,则可以通过版本控制进行回滚。配置选项代表对进行全局设置。 laravel学习笔记,重新梳理知识点。 一、环境配置 1、编辑器选用 Atom PHPStorm SublimeText Atom 是由 GitHub 官方在 201...

    Galence 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<