gpt4 book ai didi

ruby-on-rails - Foreman/Puma 未使用开发环境中的指定端口

转载 作者:数据小太阳 更新时间:2023-10-29 06:41:32 25 4
gpt4 key购买 nike

我在 application.yml 中将端口设置为 3000(figaro 管理环境变量)rails s 使用端口 3000但是当我运行 foreman start(按照 Heroku 的建议)时,我得到以下输出

14:53:23 web.1  | started with pid 24425
14:53:23 web.1 | [24425] Puma starting in cluster mode...
14:53:23 web.1 | [24425] * Version 2.11.1 (ruby 2.2.0-p0), codename: Intrepid Squirrel
14:53:23 web.1 | [24425] * Min threads: 5, max threads: 5
14:53:23 web.1 | [24425] * Environment: development
14:53:23 web.1 | [24425] * Process workers: 2
14:53:23 web.1 | [24425] * Preloading application
14:53:24 web.1 | WARNING: Skipping key "PORT". Already set in ENV.
14:53:25 web.1 | [24425] * Listening on tcp://0.0.0.0:5000
14:53:25 web.1 | [24425] Use Ctrl-C to stop
14:53:25 web.1 | [24425] - Worker 0 (pid: 24426) booted, phase: 0
14:53:25 web.1 | [24425] - Worker 1 (pid: 24427) booted, phase: 0

简介

web: bundle exec puma -C config/puma.rb

配置/puma.rb

workers Integer(ENV['WEB_CONCURRENCY'] || 2)
threads_count = Integer(ENV['MAX_THREADS'] || 5)
threads threads_count, threads_count

preload_app!

rackup DefaultRackup
port ENV['PORT'] || 3000
environment ENV['RACK_ENV'] || 'development'

on_worker_boot do
ActiveRecord::Base.establish_connection
end

配置/应用程序.yml

PORT: "3000"
  • rails 4.2.0
  • 工头 0.78.0
  • ruby 2.2.0p0
  • 美洲狮 2.11.1

最佳答案

puma 端口的谜团解开了。

把这个打印在你的 config/puma.rb 中

然后您会发现端口以某种方式神秘地设置为 5000,即使它不在您的 ENV 中也是如此。

固定在底部。

puma_port = ENV['PORT'] || 3000
puts "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"
puts "puma_port is #{puma_port}"
puts "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ”

打印出来

16:49:28 web.1  | ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
16:49:28 web.1 | puma_port is 5000
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ

然后将这一行放在您的 Procfile 中(不是您用于 Heroku 的那个)。我有一个叫做 Procfile.dev

web: PORT=3000 bundle exec puma -C config/puma.rb

然后我用这个命令运行它:

foreman start -f Procfile.dev

关于ruby-on-rails - Foreman/Puma 未使用开发环境中的指定端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29595129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com