设置VPS(Bluehost)以部署和更新RoR应用程序(Heroku样式)



我的目标是设置我的环境,使其能够在本地计算机上运行$git-push-myapp-master,并在Bluehost的VPS上自动部署/更新我的RoR应用程序。

在我的电脑(Linux Ubuntu)上,RoR应用程序位于:/var/www/myapp

我遵循了这个伟大的解释教程,我在~/git/repository/myapp的VPS服务器上安装了一个功能强大的git

理想情况下,我部署的RoR应用程序将位于Bluehost上~/rails_apps/myapp

Bluehost自动使用Pushion Passenger,~/public_html/myapp文件夹和RoR应用程序的公共端之间有一个符号链接,位于~+/rails_apps/myapp/public

我被后接收git挂钩卡住了,我没有使用Capistrano(我应该吗?)

我读过很多有类似目标的文件,比如这本,或者这本,我甚至发现了这颗宝石。

实现同一目标有不同的方法,我仍然很困惑,因为我还没有找到一个适合我需求的后接收挂钩示例(也没有掌握逻辑)。

我曾在git指南的特定挂钩部分,它告诉你可以做什么,但不告诉你如何做,这对每个人都很好,但新手除外。

对场景和目标有帮助吗?如果我使用Capistrano和/或gitrails-gem会更容易吗?其他建议?

谢谢。

添加:

嗨,我现在用的是伊斯坦布尔,但还没有进球。

我在linux本地机器上有我的应用程序/var/www/my_app。

git存储库remote--bare and--share位于user@myserver:/server/user/git/repository/my_app。

我想部署到/server/user/rails_apps/my_app。

在deploy.rb我有

set:应用程序,"my_app"。

set:repository,"user@myserver:/server/git/repository/my_app。

set:user,"my_user_name"。

设置:域,"mysite.com".

设置:scm,:git。

set_scm_command,"/server/user/bin/git"。

设置:scm_passphrase,"my_phrase"。

设置:deploy_to,"/server/user/rails_apps/my_app"。

设置:deploy_via,:remote_cache。

设置:tmp_dir,"/server/user/tmp"。

当我运行它时,会告诉我:致命:没有远程配置来列出引用。你能给我一些指导吗?谢谢

是的,标准方式是Capistrano或Mina,并在托管目录中提供rails环境。如果你一心想用heroku的方式来做这件事,你可以使用Vagrant在这里提供你自己的heroku环境:https://github.com/openruko/vagrant-openruko

相关内容