下载准备

1、vagrant 官方  WINDOWS Universal (32 and 64-bit)

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

2、VirtualBox  官方  VirtualBox . . . . for Windows hosts  x86/amd64

https://www.virtualbox.org/wiki/Downloads

3、github,由于后面要运行vagrant ssh时须要一个ssh client。像Cygwin,MinGW,GIt都包括ssh client。鉴于github还有着强大版本号控制、代码托管功能,故选Git了

https://help.github.com/articles/set-up-git

4、将git.exe所在的路径(类似C:\Program Files\Git\bin) 加入到环境变量 path中去。

相同的,也要将virtualBox的文件夹路径(类似于C:\Program Files\Oracle\VirtualBox)加入到环境变量path中

提醒一下,假设忘了加入路径到path,在后面步骤中出现故障,再来加入路径后,一定要又一次打开命令端。让命令端又一次加载环境变量才干生效。

5、上面安装完毕后,类似于C:\HashiCorp\Vagrant\bin;会被加到环境变量path中,能够在命令端使用vagrant命令了。

6、进入命令端。利用cd命令进入项目目录,比如:D:\workspace\git\test_project\

7、依次运行以下两条命令

vagrant init hashicorp/precise32
vagrant up

命令完毕后,Ubuntu 12.04 LTS 32-bit系统已经执行在VirtualBox虚拟机中了。

8、以下要在命令端登陆到虚拟机中去,运行

vagrant ssh

出现“Welcome to Ubuntu 12.04 LTS....”字样就说明ok了。

9、在Ubuntu中安装ruby和rails,和一般的在linux系统中安装ruby on rails 一样的做法

(1)安装curl

sudo apt-get install curl     

(2)安装rvm

curl -L https://get.rvm.io | bash -s stable

(3)加载rvm

source ~/.rvm/scripts/rvm

(4)安装ruby2.0.0

rvm install 2.0.0

(5)有些gem的下载须要git,所以先安装git

sudo apt-get install git

(6)安装rails

gem install rails

(7)查看成功安装与否

ruby -v
rails -v

出现相应的版本说明ok了

10、对虚拟机作訪问映射

(1)不出意外。在项目目录,本例是:D:\workspace\git\test_project\。有一个名为vagrantfile的文件,改动当中内容

# accessing "localhost:3000" will access port 3000 on the guest machine.
config.vm.network "forwarded_port", guest: 3000, host: 3000

(2)改动VirboxBox相应的虚拟系统中的网络port转发设置,能够參照http://blog.csdn.net/beslow/article/details/25466741

11、新建一个ruby on rails 项目,如果D:\workspace\git\test_project里没有ruby on rails项目。

打开cmd。依次运行例如以下命令来新建名为blog的ror项目

cd /vagrant            #进入开发文件夹,默认的虚拟机中的 路径 \vagrant  相应  于本机的物理路径  D:\workspace\git\test_project,即vagrantfile所在的文件夹
rails new blog         #用rails命令新建名为blog项目

12、假设想将已有的ror项目执行在虚拟机上  比方 D:\workspae\git\sample_app是一个已经存在的项目。执行例如以下命令

d:#进入D盘
cd D:\workspace\git\test_project#进入项目文件夹
vagrant init hashicorp/precise32#用已安装的box来初始化环境
vagrant up#启动虚拟机
vagrant ssh#登陆虚拟机
cd /vagrant#进入开发文件夹
rails server#启动服务器。假设启动不成功。那就须要你依据提示去做一些更新或安装gem、改动gemfile、bundle update、rake db:migrate之类的。这些都是开发ruby on rails的问题,不是虚拟机的故障。

13、退出虚拟机

exit         #退出虚拟机
vagrant halt #关闭虚拟机

14、假设想复制此前搭建的环境到还有一台机器上。那就在命令窗体用运行

vagrant package

完毕之后,会在当前文件夹。即vagrantfile所在文件夹生成一个名为package.box的文件。

15、拷贝这个package.box 到还有一台机器。

16、这还有一台机器也要对应地安装vagrant和VirtualBox,同上

17、假如package.box放在 d:\package.box,然后进入cmd命令窗体运行

vagrant box add ruby2rails4 d:\package.box

出现Successfully..字样,ok。能够用vagrant box list 查看当前全部box。会发现多了个ruby2rails4

18、在命令窗体进入项目目录,如果是d:\workspace\test,然后运行

vagrant init ruby2rails4

一模一样的ruby on rails环境就搭建好了,不须要又一次再装了,其它的想干什么,操作和上面一样而已。

用VirtualBox和vagrant在win7×64上搭建ruby on rails 开发环境的更多相关文章

  1. win7安装ruby on rails开发环境

    前言 我们看到很多文章说ruby环境windows它是非常困难的基础上,这将是各种稀奇古怪的问题,因此,建议linux和mac发. 可是我依照教程搭了下,问题也不算太多.总过大概花费了2个半小时左右就 ...

  2. 转:WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法

    转自:http://www.cnblogs.com/shaddock2013/p/3155024.html 最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使用的是V ...

  3. WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法

    最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使用的是VMware Workstation + Win8 Pro的虚拟环境, 在漫长的WPexpress_full下 ...

  4. Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试

    Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...

  5. 在Win7的IIS上搭建FTP服务及用户授权

    FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet上的双向文件传输(即文件的上传和下载).在网络上有 ...

  6. 在Win7的IIS上搭建FTP服务及用户授权——转载!!

    原文地址:http://blog.sina.com.cn/s/blog_6cccb1630100q0qg.html FTP服务 FTP是文件传输协议(File Transfer Protocol)的简 ...

  7. 【转】在Win7的IIS上搭建FTP服务及用户授权

    [转]在Win7的IIS上搭建FTP服务及用户授权 [转]在Win7的IIS上搭建FTP服务及用户授权 FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属 ...

  8. win7(32/64)+apache2.4+php5.5+mysql5.6 环境搭建配置

        引用自:http://blog.csdn.net/z_cf1985/article/details/22454749 环境:win7 32.(64位的同理,下载相关软件必须是对应的64位版本) ...

  9. 如何利用Vagrant快速搭建相同配置的开发环境?

    作为一名程序猿,我们常常会遇到需要搭建开发环境的问题,特别是在新入职的时候,sublime, node, apache, mysql, php等等以及各种框架的安装.如果入职的是大公司有可能这些必要的 ...

随机推荐

  1. C#程序不包含适合于入口点的静态“Main”方法怎么办

    如下图所示,一般程序上次运行还好好的,而且不管你复制粘贴再简单的程序也出现这种错误提示.   先点击右侧的显示所有文件,下面列举了所有CS文件,右击点击包括在项目中,则该文件呈现绿色,再运行即可.不过 ...

  2. 雷锋沙龙 ppt 演讲内容分享(xss,流量劫持的利用)

    http://www.pkav.net/XSS.png?from=timeline&isappinstalled=0

  3. es6 - filter for-chrome

    'use strict'; let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]; // 除去取余2的 - es6 let es5OddNumbers = numbers ...

  4. 替代 Navigator 组件

    前言:最近在研究 react-native 时,突然发现 Navigator 组件被 react-native 包 抛弃了.现总结了几种替代方法. 方法一:引入 react-native-deprec ...

  5. storage事件 js页面间通信

    1.概述 https://developer.mozilla.org/en-US/docs/Web/Events/storage localStorage 或者sessionStorage存储的数据发 ...

  6. STL学习笔记(排序算法)

    STL提供了好几种算法对区间内的元素排序.出来完全排序外,还支持局部排序. 对所有元素排序 void sort(RandomAccessIterator beg,RandomAccessIterato ...

  7. STL学习笔记(迭代器配接器)

    Reverse(逆向)迭代器 Reverse迭代器是一种配接器. 重新定义递增运算和递减运算.使其行为正好倒置. 如果你使用这类迭代器,算法将以逆向次序处理元素.所有标准容器都允许使用Reverse迭 ...

  8. .net 定时服务

    namespace MvcApplication1 { public class MvcApplication : System.Web.HttpApplication { protected voi ...

  9. iOS时间间隔判断

    如何计算两个NSDate之间的时间间隔呢? timeIntervalSinceDate: Returns the interval between the receiver and another g ...

  10. Repeater绑定List泛型对象

    后台: public void BindData()        {            List<WeiBo> DataList = new List<WeiBo>(); ...