OpsWorks:捆绑安装在防火墙后面

时间:2014-09-18 21:00:31

标签: ruby-on-rails capistrano aws-opsworks

我正在尝试在OpsWorks上运行防火墙后面的环境。 我的应用程序实例位于VPC的私有子网中,我注意到我无法运行bundle install(因为我无法从我的实例访问rubygems。)

最好的方法是什么?

我以为我可以在本地运行bundle install并检查repo中的gem,但我不知道该怎么做。

在Opsworks之前,我使用了capistrano(有一个名为copy_bundled的策略:https://github.com/rudionrails/capistrano-strategy-copy-bundled

1 个答案:

答案 0 :(得分:0)

您是否尝试过bundle install --deployment - 这会将所有捆绑的宝石存储在您的供应商/目录中,然后可以将其存储在您的版本控制中。存在一些缺点(VCS仓库的大小是主要问题),但有利于确保生产代码的可重复环境。

请注意,在生产系统上,涉及ruby / rake / rails的所有命令行操作都需要bundle exec ...前缀,因为ruby将不再知道在哪里找到gems。