我是Heroku和Ruby on Rails的新手,这可能看起来微不足道。但我找不到答案。在本地计算机上模拟Heroku
Google App Engine具有模拟本地计算机上所有App Engine服务的Web服务器应用程序。 Heroku有类似的东西吗?
基本上我想在推送到Heroku之前在本地机器上运行/调试RoR应用程序。
我是Heroku和Ruby on Rails的新手,这可能看起来微不足道。但我找不到答案。在本地计算机上模拟Heroku
Google App Engine具有模拟本地计算机上所有App Engine服务的Web服务器应用程序。 Heroku有类似的东西吗?
基本上我想在推送到Heroku之前在本地机器上运行/调试RoR应用程序。
Heroku的CLI有local
命令在本地运行你的应用程序。如果没有选择,它将运行在应用程序根Procfile
定义的方法中,使用在.env
定义的任何环境变量:
heroku local
对于配置选项,如使用用于.env
和Procfile
和local
子命令不同的路径看到:https://devcenter.heroku.com/articles/heroku-local
为此,我使用http://pow.cx/和https://github.com/Rodreegez/powder。不模仿Heroku,但它可以让你快速建立一个'生产'环境。
另外,检查http://devcenter.heroku.com/articles/multiple-environments并考虑是否需要暂存部署。
没有这样的Heroku存在,但说实话你并不需要它。在当地开发,使用Ruby 1.9.2,因为这是最近Heroku的默认设置 - 请记住Heroku的限制http://devcenter.heroku.com/categories/platform-constraints。因为这是heroku共享数据库的地方,所以在本地使用Postgres,你就可以开始一个良好的开端。
如果您使用的是Cedar堆栈,则会有一个名为foreman
的本地实用程序,它可以读取您的procfile
以模拟它在Heroku上的运行方式。关于它的更多信息是关于开发中心:
https://devcenter.heroku.com/articles/procfile#developing-locally-with-foreman