Rails 求 ruby-china 源代码在本地运行的教程

zhufengxiangxyz · 2015年04月23日 · 最后由 zhufengxiangxyz 回复于 2015年04月24日 · 3066 次阅读

大家好,最近在自学 ror,想要在本地运行 ruby-china 源代码。求大大们给些资源链接,或指导。还有站长本人有写过此类教程吗?有人知道贴个链接,谢谢。

1、安装 mongodb 2、安装 redis 3、clone 代码 4、在项目里运行: ./bing/setup,会自动安装 5、rails s 就可以启动了

剩下的,慢慢玩。

昨天装了个,http://ruby.liwei.me/

#1 楼 @liwei78 晕,没这么简单吧。 我现在的进度是:mongodb,redis 安装好了,运行./bin/setup 只有 mongodb 显示 ok。然后将 5 个 yml 文件去掉 default。 rails s 直接报错。memcached 不需要吗?怎么感觉我才弄了一点点...
你为什么这么简单?😓😓

@zhufengxiangxyz 开了 mongodb,把 yml 去掉 default 后缀,这些都是必须的。然而在 rails s 之前你忘记运行 redis 了:

$ redis-server

#3 楼 @pengedy redis 我启动了的。但是./bin/setup 还是现实为 no

晕死,启动没报错了。但是访问 localhost:3000 显示无法访问。 😢

ok, 哈哈,谢谢各位啦。运行已经没问题了。还差个 memcached。

#6 楼 @zhufengxiangxyz 印象中没有 memcached... 不知为何需要这个

@pengedy 不对,根本不需要去掉 default 后缀。只需把 setup 中的 4 个全部安装完毕(变成绿色),然后在运行 ./bin/setup 就自动安装完成了。

#8 楼 @killernova 我是看运行错误,然后手动改的配置。请教个问题,要怎么样才会四个全部都是绿色,总要配置 ip 和端口吧。

在 linux 下用 sudo apt-get install XXX

#10 楼 @killernova 是这样,我 mongodb 和 redis 都已经装好了的,但是运行./bin/setup 只有 mongodb 是绿色的。sudo apt-get install XXX 是安装软件吧。

./bin/setup 会检测那几个软件是否安装的吧,红色说明没安装或者没启动服务吧。。。这是我猜测的。刚开始我也是在手动删除 default 后缀的,烦得很。后来就把那 4 个全搞成绿色的,就 ok 了。

Ruby China 源码并不是很新手友好,如果坚持要用的话:

@rei 你是说 luke 这个 gem 么?看不懂。。。

#14 楼 @killernova Luke 是星战 1-3 主角名字。

打开 bin/setup,搜索 redis,可以定位到这一行

https://github.com/ruby-china/ruby-china/blob/d5c5a4e0f05babcd2329d2b3f9f7c99d5783f8f9/bin/setup#L69

[["mongod","MongoDB 2.0+"],["redis-server","Redis 2.0+"],["memcached","Memcached 1.4+"],["convert","ImageMagick 6.5+"]].each do |item|
  puts_line_with_yn item[1] do
    if `which #{item[0]}` == ""
      pkg_exist = false
      false
    else
      true
    end
  end
end

关键在 if `which #{item[0]}` == "",也就是这个脚本是通过 witch 命令确定是否安装了相关服务的。

在命令行输入:

which redis-server

看看有没有输出,如果没有输出的话,那就是可执行文件没有放在系统 PATH 内,这个安装脚本没有考虑编译安装的情况。

如果坚持自己编译的话,把 setup 脚本检查系统依赖这段删掉再试试。

#15 楼 @rei 怪不得我 mongodb 没启动显示的绿色,redis 启动了显示红色,是因为 PATH 的缘故啊。
推荐我个简单点的程序呗。谢谢。你很牛啊,关注去。

@rei 失礼失礼,原来是 no1.

#15 楼 @rei witch => which ?

#18 楼 @046569 对,我打错了。

很简单啊,装好 Memcached, MongoDB, Redis 再把 config 里面那几个 yml.example 改名一下 bundle install 后 rails s 就可以了

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