标签: foreman

在开发和生产中使用不同的Procfile

我有一个自制的Sinatra应用程序,我打算使用Heroku来托管它.

我在开发中使用foreman和shotgun,使用以下Procfile:

web: shotgun config.ru -s thin -o 0.0.0.0 -p $PORT -E $RACK_ENV
Run Code Online (Sandbox Code Playgroud)

它适用于开发和生产.但事实是,我不想在生产中使用霰弹枪,因为它太慢了.

我们可以为dev和prod使用单独的Procfile配置吗?

rack heroku sinatra shotgun foreman

58
推荐指数
2
解决办法
2万
查看次数

工头只显示"以pid#开头"的行,而没有别的

当我管理工头时,我得到以下内容:

 > foreman start
 16:47:56 web.1     | started with pid 27122
Run Code Online (Sandbox Code Playgroud)

只有当我停止它(通过ctrl-c)它才会显示我缺少的东西:

^CSIGINT received
16:49:26 system    | sending SIGTERM to all processes
16:49:26 web.1     | => Booting Thin
16:49:26 web.1     | => Rails 3.0.0 application starting in development on http://0.0.0.0:5000
16:49:26 web.1     | => Call with -d to detach
16:49:26 web.1     | => Ctrl-C to shutdown server
16:49:26 web.1     | >> Thin web server (v1.3.1 codename Triple Espresso)
16:49:26 web.1     | >> Maximum connections set to 1024
16:49:26 web.1     | …
Run Code Online (Sandbox Code Playgroud)

ruby rubygems ruby-on-rails heroku foreman

53
推荐指数
5
解决办法
1万
查看次数

无法使用Python在Heroku教程中启动工头

我一直在尝试完成本教程,但遇到了问题foreman start.我正在使用Windows 7,64位机器,我试图在Heroku Toolbelt提供的git bash终端中执行此操作.

当我进入时,foreman start我收到:

sh.exe": /c/Program Files (x86)/Heroku/ruby-1.9.2/bin/foreman: "c:/Program: bad
interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)

因此,我尝试通过键入cmd然后使用foreman start(类似于对此问题的答案之一的评论建议)在git bash中输入cmd .这就是产生的:

Bad file descriptor
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:377:in `read_nonblock'
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:377:in `block (2 levels) in watch_for_output'
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:373:in `loop'
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:373:in `block in watch_for_output'
21:06:08 web.1  | exited with code 1
21:06:08 system | sending SIGKILL to all processes
Run Code Online (Sandbox Code Playgroud)

我不知道第二组错误试图告诉我什么,因为它似乎声称engine.rb正在运行的文件位置甚至不存在于我的计算机上. …

ruby python heroku git-bash foreman

41
推荐指数
3
解决办法
1万
查看次数

工头的.env文件有评论字符吗?

标题说明了一切:你能在工头读取的.env文件中注释出来吗?

foreman

33
推荐指数
2
解决办法
3万
查看次数

如何在Rails控制台中加载环境变量?

我认为这是一个简单易行的问题!

我正在使用.env文件来保存我的所有环境变量,而我正在使用foreman.

不幸的是,运行rails控制台时没有加载这些环境变量,rails c所以我现在在运行控制台后手动加载它们,这不是最好的方法.

我想知道是否有更好的方法.

irb environment-variables ruby-on-rails-3 foreman

32
推荐指数
1
解决办法
7437
查看次数

杀死MailCatcher:东西正在使用端口1025

我正在尝试为rails应用程序运行"foreman start"但是这条错误消息阻止我正确运行领班:

~~>错误:有些东西正在使用端口1025.您是否已经在运行MailCatcher?

我试过杀死PID,进入Web界面退出程序,还...重新启动comp.有人知道如何解决这个问题吗?

谢谢

ruby-on-rails foreman mailcatcher

27
推荐指数
4
解决办法
2万
查看次数

django在单元测试中设置环境变量

我希望能够在我的Django应用程序中设置环境变量,以便能够运行测试.例如,我的观点依赖于几个API密钥.

有一些方法可以在测试期间覆盖设置,但我不希望它们被定义,settings.py因为这是一个安全问题.

我已经尝试在我的设置函数中设置这些环境变量,但这不能为Django应用程序提供值.

class MyTests(TestCase):
    def setUp(self):
        os.environ['TEST'] = '123'  # doesn't propogate to app
Run Code Online (Sandbox Code Playgroud)

当我在本地测试时,我只是有一个.env我运行的文件

foreman start -e .env web
Run Code Online (Sandbox Code Playgroud)

提供os.environ价值.但是在Django中unittest.TestCase它没有办法(我知道)设置它.

我怎么能绕过这个?

python django environment-variables foreman

25
推荐指数
4
解决办法
2万
查看次数

为什么Foreman在按Control-C之前没有输出一些东西?

我刚刚进入rails编程,看起来我可以使用两个程序在本地运行我的项目:rackup和foreman.

我注意到的一个区别是,工头不会输出一些我希望看到的东西,我会看到我是否运行了机架,直到我按ctrl + c关闭服务器.然后出现所有这些消息,就像它们被隐藏一样.

是否有一个原因?我怎样才能让工头更加冗长?

ruby rack ruby-on-rails foreman

22
推荐指数
1
解决办法
5096
查看次数

我是否可以告诉工头每次提出请求时重新加载网络应用程序,这样我可以体面地发展?

我使用node.js在JavaScript中编写的Web应用程序.我使用Foreman,但每次更改代码时我都不想手动重启服务器.我可以告诉Foreman在处理HTTP请求之前重新加载整个Web应用程序(即重启node过程)吗?

node.js foreman

21
推荐指数
3
解决办法
7091
查看次数

工头开发与生产(轨道)

在生产与发展方面表现不同的"工头方式"是什么?那就是我们希望工头开始在开发中启动一堆东西,但是在heroku生产中我们不需要它启动(例如)solr.

ruby-on-rails heroku foreman

19
推荐指数
2
解决办法
8657
查看次数