问题标签 [rackup]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 对带有配置文件的瘦服务器使用 rackup 命令
我正在尝试运行以下命令来在生产环境中运行服务器:
private_pub.ru 看起来像这样:
我想将配置文件(thin.yml)传递给 Thin,如下所示:
所以这是我要执行的命令:
但是 rackup 不支持 -C 因为这个参数是针对瘦的......根据这些文档:https ://github.com/macournoyer/thin/#configuration-files
我还尝试将我的命令更改为:
但后来我得到错误:
在我的设置中 - 当机架运行很薄时,如何将此配置(thin.yml)传递给瘦?
rack - Ruby Rack 调用:类与实例方法?
我正在使用Rack构建一个 REST API。
应该call
是类还是实例方法?
ruby - Sinatra:模块化路由类不识别辅助方法
我正在 Sinatra 中构建 API,并已转换为模块化样式。但是,我遇到了无法识别路由文件中的方法调用的问题。
我已经简化了应用程序,因此帖子更短,但基本问题是,如果我GET /test
在WorkoutHandler
- 它无法识别其中的方法,WardenStrategies
或者LoginHelper
除非我还将这些文件包含在处理程序中(它们已经包含在 app.rb 中)。但是,一旦我这样做,他们使用的 gem 中声明的方法就无法识别。所有这些都在 app.rb 中注册,并且在我的 Rackup 文件中是必需的。
这是我的 app.rb 文件
以下是 config.ru、Handler 和 Helper 文件。(处理程序只是我用于控制器/路由文件的名称。
我假设helpers
,use
和register
只需要在 app.rb 中声明(因为我需要我的 rackup 文件中的所有文件并从那里运行应用程序)。但是,check_authentication
除非我在这里也注册了帮助程序,否则无法识别该方法。
截至撰写本文时,我在运行规范时收到以下错误:
这意味着 env 没有 :warden 键/值(我在控制台中确认)。该authenticated?
方法在 Warden gem 目录中,所以我想我可以require 'warden'
在每个 Handler 文件中 - 我不认为这是模块化 Sinatra 应用程序应该构建的方式。
我已经阅读了关于模块化 Sinatra 应用程序的所有博客文章和书籍章节,但我似乎无法调试我的问题。据我了解,需要在所有使用它们的文件中重新注册(包含)助手是无关紧要的。我认为通过扩展 Sinatra::Base,我可以访问 app.rb 中所有声明的类。
任何帮助,将不胜感激。谢谢!
ruby-on-rails - Rackup 命令在 Windows 7 上不起作用
我正在尝试使用private_pub
and建立在线聊天thin
。我已经安装了 gem 并尝试使用以下命令启动瘦客户端。
我得到以下错误:
甚至rackup --help
显示相同的错误。任何要添加到环境变量或config.ru
文件中的东西。请帮忙!
我的平台是 Windows 7 32 位。
ruby - ruby - 机架问题
我正在尝试运行 rackup 来运行 ruby 应用程序。我收到此错误。
怎么了?任何帮助表示赞赏。
ruby - 将 sinatra 配置为服务器
我使用 sinatra 用 ruby 编写了一个应用程序。该应用程序运行良好,我正在使用邮递员测试发布/获取请求。
现在我使用命令启动应用程序,rackup
但它在端口上本地启动服务器9292
。使用邮递员,我POST
发送localhost:9292
我想在从另一台计算机访问时测试该应用程序。我期望使用 POSTMAN 发送 POST 的东西,http://182.12.34.1:9292
但我没有找到如何做到这一点。
配置.ru
档案
任何想法,如何从本地测试切换到服务器?
谢谢
ruby - 在 ubuntu 上使用 rvm 时,我必须在哪里为 sinatra 启动服务“rackup”
我正在 ubuntu 上的 IDE rubymine 中开发一个 webapp,我最近为我的 gemsets 安装了 gem sinatra,以便为我的 webapp 编写一个 REST-API。我有一点启动问题,因为在创建 app.rb 和 config.ru 之后,我不知道应该在哪里编写“rackup”命令。由于 rvm,我的 ubuntu 不知道 rackup。它告诉我应该安装 ruby-rack 但 sinatra 不应该在船上安装它吗?如果 gem rack 2.0.1 也安装在同一个 gemset 中会不会有问题?
我试图用系统终端启动机架。那没起效。
ruby - 如何使用 rackup/Sinatra 在多个实例之间共享 Redis 键/值?
我正在尝试使用 Redis 作为我的会话存储,这似乎工作得很好。但是我不知道如何让 Sinatra 的多个实例访问同一个会话。这就是我在 config.ru 中的内容:
我必须缺少一个参数来设置它,但这种情况下缺少文档: https ://github.com/redis-store/redis-rack
也许这不是我想要实现这种行为的目的?
最终目标是将我的 Sinatra 应用程序与 docker 一起部署到集群环境中,这样我就可以在不停机的情况下发布新版本。因此,无论让我在多个实例之间共享机架会话是否有效。我想我可以手动创建一个 redis 对象而不使用 session 关键字,这似乎是错误的方法。
docker - 为 docker 正确设置 rackup puma 的主机
您如何强制 rackup 使用端口 0.0.0.0 以便它可以从 docker 容器内部与您的本地环境进行通信?这是我的代码:
如果我从容器外部运行此命令,它会非常有效。这是我从本地执行此操作时的终端输出:
注意正确的主机:tcp://0.0.0.0:4567
. 不幸的是,它在容器中不起作用。这是我使用 docker 执行此操作时的终端输出:
任何想法我做错了什么?