标签: procfile

使用Foreman启动位于不同目录中的Rack App

我有一个Procfile设置,成功运行了许多进程:

# /Procfile
redis: bundle exec redis-server
sidekiq: bundle exec sidekiq -v -C ./config.yml
forward: forward 4567 mock-api
Run Code Online (Sandbox Code Playgroud)

我需要再添加一个进程 - 一个位于我机器上不同目录的Sinatra应用程序.如果我cd到目录,我可以从终端启动它:

$ rackup -p 4567
Run Code Online (Sandbox Code Playgroud)

我可以使用终端从不同的目录启动它:

$ sh -c 'cd /Path/to/project/ && exec rackup -p 4567'
Run Code Online (Sandbox Code Playgroud)

但是我应该如何使用领班做到这一点.我尝试添加以下内容,但它无声地失败:

mock-api: sh -c 'cd /Path/to/project/ && exec rackup -p 4567'
Run Code Online (Sandbox Code Playgroud)

这甚至可能吗?如果是这样,怎么样?

ruby gem ruby-on-rails-3 foreman procfile

6
推荐指数
1
解决办法
1884
查看次数

是否可以在不同的文件夹级别具有Procfile和manage.py文件?

介绍:

  • 我正在关注Heroku快速入门指南中的Django入门.

  • 我打算应用关于使用virtualenvs和项目的Django两本书的哲学思想.Audrey RoyDaniel Greenfeld(作者)喜欢将所有环境放在一个目录中,将所有项目放在另一个目录中.

  • 我还打算应用Django两个Scoops书籍哲学,将django-admin.py startproject管理命令生成的内容放在另一个目录中,该目录作为git仓库根目录(又称三层方法).

最高级别的布局:

repository_root/
    django_project_root/
        configuration_root/
Run Code Online (Sandbox Code Playgroud)


本地:

OS X 10.8.4
pip == 1.4.1
virtualenv == 1.10.1
virtualenvwrapper == 4.1.1
wsgiref == 0.1.2
.bashrc包含:

export WORKON_HOME=$HOME/Envs
export PROJECT_HOME=$HOME/Projects
Run Code Online (Sandbox Code Playgroud)

〜/ Envs
~/Projects


在hellodjango_venv里面:

Django == 1.5.2
dj-database-url == 0.2.2
dj-static == 0.0.5
django-toolbelt == 0.0.1
gunicorn == 18.0
psycopg2 == 2.5.1
static == 0.4


从航站楼:

mac-pol:~ oubiga$ …
Run Code Online (Sandbox Code Playgroud)

directory django heroku virtualenv procfile

6
推荐指数
2
解决办法
1783
查看次数

工头启动多个流程?

我有三个流程Procfile.有时候,我只想跑两个.那是否有命令?

$ foreman start process_1 process_2
ERROR: "foreman start" was called with arguments ["process_1", "process_2"]
Usage: "foreman start [PROCESS]"
Run Code Online (Sandbox Code Playgroud)

ruby foreman procfile

6
推荐指数
2
解决办法
1904
查看次数

Aws Elasticbean不运行我的.jar应用程序

在aws上载和部署之后,.jar文件尚未启动.所以静态内容正在被提供,并且正在重新配置nginx(通过自定义配置)但是jar文件(我已经上传的.zip的根目录)在部署后没有运行,所以我不得不通过ssh命令运行它,当然它关闭ssh终端后关闭...我在亚马逊网站上定义了procfile,但没有进展..

deployment jar amazon-web-services procfile amazon-elastic-beanstalk

6
推荐指数
1
解决办法
729
查看次数

Heroku,Java,Procfile,无法找到或加载主类

我正在将heroku与maven一起使用来运行服务器。我的目标是让heroku作为Web dyno运行Java类server.class。

我将如何编写procfile来以网络方式执行Java程序server.class?


我当前的Procfile

web: java -cp $JAVA_OPTS target/classes/v1/a1/server
Run Code Online (Sandbox Code Playgroud)

我的错误。(来自heroku日志)

Picked up JAVA_TOOL_OPTIONS: -Xmx350m -Xss512k -Dfile.encoding=UTF-8
Error: Could not find or load main class target.classes.v1.a1.server
State changed from starting to crashed
Run Code Online (Sandbox Code Playgroud)


可能有用的信息

proc文件

web: java -cp $JAVA_OPTS target/classes/v1/a1/*
Run Code Online (Sandbox Code Playgroud)

退货

Error: Could not find or load main class target.classes.v1.a1.myOtherClass
Run Code Online (Sandbox Code Playgroud)

我原来的Procfile(也没用)

web: java -cp target/classes/:target/dependency/* server
Run Code Online (Sandbox Code Playgroud)
  • 我的文件结构与heroku文档中给出的示例有所不同,因此我对procfile进行了一些修改。
  • 我的依赖项不在/ target / dependencies中。
  • 我的课程在target / classes / v1 / a1 /中。
  • server.java具有main方法和有效的构造方法。
  • 我所有的依赖关系似乎都井井有条。
  • Maven确实将我的.java文件构建到目标目录中的.class文件中。
  • 我在Unix上,所以引号和分号可能无法工作。

java heroku maven procfile

6
推荐指数
2
解决办法
4108
查看次数

当我将Django应用程序部署到Heroku时,为什么不自动运行collectstatic?

我已经关注了关于Django和Static Assets的官方Heroku文档 ; 我已经安装dj-static并将其添加到我的requirements.txt文件中,正确配置了我settings.py文件中的所有变量:

STATIC_ROOT = os.path.join(CONFIG_ROOT, 'served/static/')                       
STATIC_URL = '/static/'                                                         

STATICFILES_DIRS = (                                                            
    os.path.join(CONFIG_ROOT, 'static'),                                        
)
Run Code Online (Sandbox Code Playgroud)

这就是我的wsgi.py样子:

import os                                                                       
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_django_project.settings")                                                                 

from django.core.wsgi import get_wsgi_application
from dj_static import Cling
application = Cling(get_wsgi_application())
Run Code Online (Sandbox Code Playgroud)

内容Procfile:

web: gunicorn --bind 0.0.0.0:$PORT my_django_project.wsgi:application 
Run Code Online (Sandbox Code Playgroud)

在文档中,它表示"collectstatic在配置正确时会自动运行".但是当我导航到我的网站时,显然没有css.

我尝试使用调试heroku run,但只是按预期复制静态文件.

我注意到当我collectstatic在我的命令中包含命令时Procfile,即

web: python my_django_project/manage.py collectstatic --noinput ; gunicorn -b 0.0.0.0:$PORT my_django_project.wsgi:application
Run Code Online (Sandbox Code Playgroud)

...按预期工作,并提供静态文件.

然而,有什么奇怪的是当我跑步heroku run bash并查看STATIC_ROOT …

django heroku static-files procfile

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

使用默认Web服务器(webrick)未检测到Procfile

在尝试部署我的Ruby on Rails应用程序时,我得到了这个错误.这是我的命令行中的错误:

 ###### WARNING:
remote:        No Procfile detected, using the default web server (webrick)
remote:        https://devcenter.heroku.com/articles/ruby-default-web-server

remote:
remote: -----> Discovering process types
remote:        Procfile declares types -> (none)
remote:        Default types for Ruby  -> console, rake, web, worker
remote:
remote: -----> Compressing... done, 29.5MB
remote: -----> Launching... done, v21
remote:        https://agile-sea-1900.herokuapp.com/ deployed to Heroku
remote:
remote: Verifying deploy... done.
To https://git.heroku.com/agile-sea-1900.git
   e5d3ad8..975d5eb  master -> master
Run Code Online (Sandbox Code Playgroud)

我尝试按照" 未使用默认Web服务器检测到Procfile "中的建议,但这没有帮助.

ruby windows ruby-on-rails heroku procfile

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

将Deployd部署到Heroku仪表板密钥

我有一个Deployd应用程序,我试图部署到Heroku.我已成功部署该应用程序,并能够通过它的url命中它.我现在正试图访问仪表板.为了访问仪表板,它需要我从服务器生成密钥.我知道有两种方法可以做到这一点.

这里描述的第一种方法本地生成密钥并将其推送到heroku.我觉得这种方法在将密钥发布到VCS的意义上是不安全的.

第二种方法是使用Procfile和list dpd keygendpd showkey.但由于某种原因,这种方法对我不起作用.我看到命令在heroku日志中执行但它没有打印出键,我无法通过执行看到它heroku run dpd showkey.

我想弄清楚为什么列出我的procfile中的命令不起作用.请在下面找到我的文件:

web: node app.js
cmd: dpd keygen
cmd: dpd showkey
Run Code Online (Sandbox Code Playgroud)

我的日志文件如下:

2015-08-30T19:18:25.012474+00:00 heroku[api]: Starting process with command `dpd showkey` by [email]
2015-08-30T19:18:28.196008+00:00 heroku[run.5122]: Starting process with command `dpd showkey`
2015-08-30T19:18:28.168161+00:00 heroku[run.5122]: Awaiting client
2015-08-30T19:18:28.501367+00:00 heroku[run.5122]: State changed from starting to up
2015-08-30T19:18:31.023033+00:00 heroku[run.5122]: State changed from up to complete
2015-08-30T19:18:31.012416+00:00 heroku[run.5122]: Process exited with status 0
2015-08-30T19:19:36.935285+00:00 …
Run Code Online (Sandbox Code Playgroud)

heroku node.js deployd procfile

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

Django - Foreman无法找到已安装的模型

我试图用工头/本町来管理我基于Procfile-Django应用程序.当我启动应用程序查看正常时python manage.py runserver,一切正常.但是,当我通过honcho start或启动应用程序时foreman start web,我收到此错误:

11:59:31 system | web.1 started (pid=27959)
11:59:31 web.1  | [2016-04-26 11:59:31 -0700] [27959] [INFO] Starting gunicorn 19.4.5
11:59:31 web.1  | [2016-04-26 11:59:31 -0700] [27959] [INFO] Listening at: http://0.0.0.0:5000 (27959)
11:59:31 web.1  | [2016-04-26 11:59:31 -0700] [27959] [INFO] Using worker: sync
11:59:31 web.1  | [2016-04-26 11:59:31 -0700] [27962] [INFO] Booting worker with pid: 27962
11:59:31 web.1  | [2016-04-26 18:59:31 +0000] [27962] [ERROR] Exception in worker …
Run Code Online (Sandbox Code Playgroud)

python django foreman procfile

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

Django 应用程序的 Procfile 中应该包含哪些内容?

ProcfileHeroku 上的 Django 应用程序应该包含哪些内容?

我试过:

web: python appname.py
Run Code Online (Sandbox Code Playgroud)

因为我找到了一个类似 python 应用程序的示例。

进一步的搜索并没有让事情变得更清楚,除了我可能需要使用gunicorn而不是python。我发现各种帖子建议各种格式,例如:

web gunicorn
web:gunicorn
web: gunicorn
Run Code Online (Sandbox Code Playgroud)

我不知道gunicorn之后应该有什么,有些帖子有编程语言,有些有IP地址,有些有各种其他东西。

有些建议运行:

heroku ps:scale web=1
Run Code Online (Sandbox Code Playgroud)

但这会导致错误:

Scaling dynos... !
 !    Couldn't find that process type (web).
Run Code Online (Sandbox Code Playgroud)

我只是没有线索,也不知道该向哪里求助。

自从发帖以来,我观看了一些关于此的视频并尝试过:

web: gunicorn appname.wsgi
Run Code Online (Sandbox Code Playgroud)

在我的 Procfile 中,但它仍然不起作用,仍然导致:

at=error code=H14 desc="No web processes running"
Run Code Online (Sandbox Code Playgroud)

python django heroku procfile dyno

5
推荐指数
2
解决办法
6316
查看次数