我正在尝试完全启动我的 Rails 应用程序,作为传递给启动实例 EC2 API 的用户数据脚本的一部分。该脚本设置正确的密钥,从我的 git 存储库下载应用程序,然后它应该运行一些初始化脚本,从以下内容开始:
bundle install
这应该安装所有缺少的宝石。但是,它失败了。其他命令工作得很好。
最初的失败是它找不到 bundle 命令,我通过手动设置环境变量来解决这个问题,但 Ruby 仍然无法找到 bundler gem。
我的问题是,当我 ssh(一旦用户数据脚本失败)到启动的实例时,捆绑器工作没有问题。这使我无法调试原始问题。
在 ec2 中执行用户数据的凭据是什么?这可能是问题吗?为什么不能从 bash 脚本调用 bundler 有什么特殊原因吗?