分享 Windows 下使 (zhē) 用 (téng) Rails 的正确姿势

pynix · 发布于 2016年6月17日 · 最后由 pynix 回复于 2016年12月21日 · 887 次阅读
9800

砍头不要紧,只要主义真。杀了夏明翰,还有后来人!

社区和群里源源不断的有人这windows下使用ruby (on rails),每次出的问题基本都差不多,不是编码错误就是native库编译出错。

Mac 大法好!!!

Linux 大法好!!!

得到的回答基本是以上两派。

如果你实在没办法绕开,需要在windows下使用ruby (on rails),试试我的做法。

抱歉我并没有解决你的问题,我知识不想再浪费时间在这些无聊的问题上,所以我选择虚拟机方案。

我的组合是这样的:

vagrant + ubuntu + putty + sublime text

动手之前先找一个稳定的梯子,你有很大的机会用到。

安装 vagrant 和 ubuntu

vagrant

下载安装,完成后在cmd敲入命令

vagrant

接下面vagrant会出现提示并自动下载并安装virtualbox,如未能成功安装,请到自行下载安装。

virtualbox

接下来需要虚拟机镜像,也就是box。

vagrant init ubuntu/xenial64

此命令会生成Vagrantfile配置文件

14.04 LTS (trusty) 或者 16.04 LTS (xenial)自行选择

可能会很慢,请copy下box的地址自行下载,然后再手动导入。

vagrant box add ubuntu/xenial64 path/to/box

接着

vagrant up

如果机器没起来,你需要打开virtulalbox 手动启动虚拟机,查看错误信息。

很有可能是因为CPU没有开启VT支持,请在BIOS中开启。

如果起来来了,你会照着网站上

vagrant ssh

然后并没有什么卵用,大概你没有安装ssh客户端。

安装putty

putty

请下载putty和puttygen,使用后者把vagrant工作目录(即Vagrantfile所在的目录)下的ssh key转化为putty key,然后按照提示使用putty登陆。

接下来修改ubuntu源,推荐:

清华

默认的网络配置可以正常安装软件。

配置共享目录和端口映射

回到windows,运行下面的命令安装virtualbox扩展,挂载目录需要扩展支持。

vagrant plugin install vbguest

此命令会安装必要的构建工具,内核头文件,和一个内核扩展模块。

完成后修改Vagrantfile中共享目录和端口映射相关的配置。比如

config.vm.synced_folder "../Project", "/home/ubuntu/Project" config.vm.network "forwarded_port", guest: 3000, host: 3000

然后重新加载配置文件:

vagrant reload

安装ruby (on rails)

16.04 自带ruby 2.3,当然也可以使用rvm,rbenv等安装。

安装 ruby-dev zlib-dev, libxml2-dev。

修改gem源,推荐本站。

安装rails,生成项目。

或许你需要安装nodejs来作为execjs的执行环境。

rails 开发服务器需要监听0.0.0.0才能在windows里访问到。

rails s -b 0.0.0.0

安装一个顺手的编辑器。

sublime text

atom

其他还有RM之类的IDE,都试试看。

直接在虚拟机的命令行下使用vim也是个不错的选择。

共收到 10 条回复
15139
msg7086 · #1 · 2016年6月17日

这不叫Windows下使用Rails。 Ubuntu,说实话,是Linux的一种。

8345
glz1992 · #2 · 2016年6月17日

虽然标题和内容不符,不过这确实是在 windows 下面折腾 ruby, rails 最合适的方案了。

19766
dudu_zzzz · #3 · 2016年6月17日

vagrant里跑,win下开发,妥妥的。 可以下个ConEmu之类的工具,ssh连上去,那就再也不用管虚拟机啦

96
shyling · #4 · 2016年6月17日

既然用linux先选选发行版吧

20859
adamshen · #5 · 2016年6月17日 3 个赞

linux下使用qq的正确姿势

1.安装virtualbox

2.在virtualbox上安装xp

3.在虚拟机里安装qq

3519
xylinq · #6 · 2016年6月17日

前段时间我在 win10 的 bash on windows 下成功运行了 rails 的项目, 所以现在又多了一种选择。

122
lidashuang · #7 · 2016年6月17日

👍🏾

9695
pengedy · #8 · 2016年6月17日

我还是觉得有点标题党。说实话,把写好的项目丢进Docker里放Windows上跑就可以了。

96
ilessr · #9 · 2016年11月29日

你这个完全就跟windows没啥关系. 正确的姿势是: 下载mingw的ruby安装, 然后安装Devkit, 然后到rubygems 网站下载新的rubygems 安装(因为默认的版本太低没法用). 接着如果gem安装不成功比如bcrypt等, 请用 gem install --platform=ruby. 然后就没问题了, 当然win下面的ruby速度是很慢的.因为不像python,php用VC编译.

9800
pynix · #10 · 2016年12月21日

#9楼 @ilessr 好吧,标题档。。。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册