gpt4 book ai didi

ruby-on-rails - 使用 EB CLI 3.0X 将 Rails 应用程序部署到 Elastic Beanstalk

转载 作者:行者123 更新时间:2023-12-04 19:49:27 25 4
gpt4 key购买 nike

我正在尝试使用 EB CLI 3.0x 重新部署 RoR 应用

我之前使用 EB CLI 2 在 Amazon Linux stack 2014.03 和 Ruby Puma 2.0 上成功部署了我的应用程序。但是,在带有 Puma 2.0 的 Amazon Linux 2014.09 上使用 CLI 3.0 部署应用程序时出现错误。

第一个问题是将 postgresql-dev 重命名为 postgresql92-devpostgresql93-dev 这对每个人来说都很常见。但除此之外,我还面临以下问题:

部署环境好像没有运行bundle installdb migrate/seed

更重要的是,实例中缺少环境变量。在我使用 EB CLI 2 和 Amazon Linux 2014.03 的部署中,我可以编写我的 .ebextension 配置并在 /opt/elasticbeanstalk/containerfiles/envvars 中使用环境变量。较旧的部署会初始化变量,例如 $EB_CONFIG_APP_PIDS$EB_CONFIG_APP_CURRENT,我可以在我的配置文件中使用这些变量。

然而,新版本在 /opt/elasticbeanstalk/support/envvars 下为我提供了一个相当空的 envvars 文件,并且之前的环境变量都不存在。此外,我还必须手动配置我的数据库并将其连接到我的应用程序。

我想知道是否有其他人遇到过类似的问题,是否有任何解决方案可以轻松地从旧版本的 Elastic Beanstalk CLI 迁移到新版本。

如果有人可以向我指出更新版本的 .ebextensions 以自动启动 sidekiq/cron 服务 等等

最佳答案

即使是旧线程:

AWS改变了获取这个变量的方式,例如:

EB_APP_STAGING_DIR=$(/opt/elasticbeanstalk/bin/get-config container -k app_staging_dir)

可以通过以下方式获得 CONTAINER 变量的完整列表:

/opt/elasticbeanstalk/bin/get-config container --output=yaml
---
app_staging_dir: "/var/app/ondeck"
instance_port: '80'
gem_dir: "/opt/elasticbeanstalk/support/gems/puma"
http_port: '80'
app_deploy_dir: "/var/app/current"
node_install_dir: "/opt/elasticbeanstalk/support/node-install"
puma_version: 2.9.1
node_version: 0.10.33
app_log_dir: "/var/app/containerfiles/logs"
ruby_version: 2.1.5
script_dir: "/opt/elasticbeanstalk/support/scripts"
source_bundle: "/opt/elasticbeanstalk/deploy/appsource/source_bundle"
app_pid_dir: "/var/app/containerfiles/pids"
puma_pid_dir: "/var/run/puma"
app_asset_dir: "/var/app/containerfiles/assets"
tarball_url: https://s3-eu-west-1.amazonaws.com/elasticbeanstalk-env-resources-eu-west-1/stalks/eb_ruby_puma_3.11.1/lib/tarballs
puma_log_dir: "/var/log/puma"
app_user: webapp
support_dir: "/opt/elasticbeanstalk/support"

其他配置类别选项可以运行获取

/opt/elasticbeanstalk/bin/get-config -h
Usage: get-config CATEGORY [OPTIONS]

Categories:
optionsettings environment option settings that affect instance
container container specific configurations
addons addon configurations
environment environment variables
meta EB environment meta-data

Options:
-k, --key KEY Key of specific configurations.
--output OUTPUT_FORMAT Output format. Can be JSON or YAML. Default is JSON.
-n, --namespace NAMESPACE Otion Setting namespace for retrieval. Only applied to Category optionsettings.
-o, --option-name OPTION_NAME Option Setting name for retrieval. Only applied to Category optionsettings.
-a, --add-on ADDON Add-on name. Only applied to Category addons.
-h, --help Help

希望这有助于人们将堆栈升级到 2014.09 及后续版本。

关于ruby-on-rails - 使用 EB CLI 3.0X 将 Rails 应用程序部署到 Elastic Beanstalk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27202727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com