【发布时间】:2018-01-25 00:39:39
【问题描述】:
我正在将一个 Rails 应用程序部署到 AWS。其中一个 gem 有依赖关系,需要在部署期间运行 bundle install 之前在服务器上安装某些文件。在我的.ebextensions 文件中,我有以下内容
01-oracle_sdk:
sources:
/usr/lib: https://s3-us-west-2.amazonaws.com/xyz/instantclient-sdk-linux.x64-12.2.0.1.0.zip
02-oracle-basic:
sources:
/usr/lib: https://s3-us-west-2.amazonaws.com/xyz/instantclient-basic-linux.x64-12.2.0.1.0.zip
03-oracle_sql_plus:
sources:
/usr/lib: https://s3-us-west-2.amazonaws.com/xyz/instantclient-sqlplus-linux.x64-12.2.0.1.0.zip
04-container_commands:
00_oracle_dir:
command: "export LD_LIBRARY_PATH=/usr/lib/instantclient_12_1"
据我所知,这些都没有在部署前运行。尝试安装 gem 时失败,因为该目录不存在。当我 SSH 进入实例时,LD_LIBRARY_PATH 没有设置,source 命令没有下载和解压缩任何 zip 文件。
1) 我的语法是否正确 2) 如何让这些命令执行 PRE 部署/捆绑安装?
【问题讨论】:
标签: ruby-on-rails amazon-web-services amazon-elastic-beanstalk