如何使用具有弹性beanstalk的amazon Web服务将秘密文件推送到EC2 Ruby on Rails应用程序?
我将文件添加到git存储库,然后我推送到github,但我想将我的秘密文件保存在git存储库之外.我正在使用以下部署到aws:
git aws.push
Run Code Online (Sandbox Code Playgroud)
以下文件位于.gitignore中:
/config/database.yml
/config/initializers/omniauth.rb
/config/initializers/secret_token.rb
Run Code Online (Sandbox Code Playgroud)
在此链接之后,我尝试将S3文件添加到我的部署中:http: //docs.amazonwebservices.com/elasticbeanstalk/latest/dg/customize-containers.html
引用该链接:
示例代码段
以下示例从Amazon S3存储桶下载zip文件并将其解压缩到/ etc/myapp中:
Run Code Online (Sandbox Code Playgroud)sources: /etc/myapp: http://s3.amazonaws.com/mybucket/myobject
按照这些说明,我将文件上传到S3存储桶,并将以下内容添加到.ebextensions目录中的private.config文件中:
sources:
/var/app/current/: https://s3.amazonaws.com/mybucket/config.tar.gz
Run Code Online (Sandbox Code Playgroud)
该config.tar.gz文件将提取到:
/config/database.yml
/config/initializers/omniauth.rb
/config/initializers/secret_token.rb
Run Code Online (Sandbox Code Playgroud)
但是,部署应用程序时,不会复制或提取S3主机上的config.tar.gz文件.我仍然收到无法找到database.yml的错误,并且EC2日志没有配置文件的记录,这里是错误消息:
Error message:
No such file or directory - /var/app/current/config/database.yml
Exception class:
Errno::ENOENT
Application root:
/var/app/current
Run Code Online (Sandbox Code Playgroud) 我们需要使用 Gradlecpp-library
和cpp-application
插件指定自定义 GCC/G++ 编译器位置。根据文档工具链部分:
Linux 要在 Linux 上构建,请安装兼容版本的 GCC 或 Clang。C++ 插件将使用系统路径发现 GCC 或 Clang。
g++
Gradle 似乎没有选择在PATH 环境变量前添加所需路径。
如何引导 Gradle 从自定义路径获取 GCC/G++?