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

pynix · 发布于 2016年06月17日 · 最后由 pynix 回复于 2016年12月21日 · 1183 次阅读
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

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

8345

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

19766

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

96

既然用linux先选选发行版吧

20859

linux下使用qq的正确姿势

1.安装virtualbox

2.在virtualbox上安装xp

3.在虚拟机里安装qq

3519

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

9695

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

96

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

9800

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

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