0

我有一个厨师服务器,我还需要用作 Ruby gem 服务器。当我运行gem server它说Server started at 0.0.0.0:8808。我可以在浏览器中访问主机名:8808 并查看 gem 服务器索引页面,其中列出了我希望看到的所有 gem,但所有其他目录(链接)都给出 404。我已经尝试过运行 gem generate_index 并使用 --legacy 选项。

该框配置为使用 Chef Server 的嵌入式 gem 可执行文件。

# which gem
/opt/chef-server/embedded/bin/gem
# gem env
...
  - GEM PATHS:
     - /opt/chef-server/embedded/lib/ruby/gems/1.9.1
     - /root/.gem/ruby/1.9.1
...

列出 /opt/chef-server/embedded/lib/ruby/gems/1.9.1 中的内容显示了 gem 服务器规范中列出的页面的目录(例如 gems、quick、规范)。

我不确定这里的问题是什么。

编辑:我尝试使用 geminabox,而不是 gem 服务器。我看到与github 错误相同的问题,但未解决。

4

1 回答 1

0

将 Gem 目录作为参数传递给服务器:

gem server --dir /opt/chef/embedded/lib/ruby/gems/1.9.1/gems

当前gem env用户的 可能不是您所期望的,这就是您遇到此错误的原因。

于 2013-12-31T22:58:59.847 回答