docker - Elastic Beanstalk 上的 Docker => 使用环境配置运行终端
问题描述
使用单个 Docker 容器运行 EBS。我已经使用 EBS 的环境变量配置来设置连接字符串等内容。
我想连接到一台机器并在一个新容器中运行一个终端。
这很容易,我只需要:
eb ssh
接着
sudo docker run -it my-image bash
但是,我希望该终端环境具有与应用程序相同的配置(想想 heroku 运行)。
看起来环境是为在 /opt/elasticbeanstalk/hooks/appdeploy/enact/00run.sh 中运行的实际应用程序组装的,但我没有任何运气来适应我的目的。
是否有经过批准的方法来实现这一目标?
解决方案
这个问题与https://stackoverflow.com/questions/31572970/how-to-run-rails-migrations-and-seeding-in-amazon-elastic-beanstalk-single-conta/31932687#31932687_密切相关,我是使用@nmott 的答案:
#! /usr/bin/env bash
. /opt/elasticbeanstalk/hooks/common.sh
EB_SUPPORT_FILES=$(/opt/elasticbeanstalk/bin/get-config container -k support_files_dir)
EB_CONFIG_DOCKER_ENV_ARGS=()
while read -r ENV_VAR; do
EB_CONFIG_DOCKER_ENV_ARGS+=(--env "$ENV_VAR")
done < <($EB_SUPPORT_FILES/generate_env)
docker run --rm "${EB_CONFIG_DOCKER_ENV_ARGS[@]}" -it <image> bash
推荐阅读
- android - 使文本光标位于软键盘上方
- typescript - 如何将 Three.js 插件的插件与 Webpack 捆绑在一起?
- facebook - /act_{ad_account_ID}/users 请求时找不到有关响应错误的任何信息
- android - 如果应用程序在后台,Firebase 有时不会在一段时间后触发 onMessageReceived
- html - css 显示 flex 和换行
- c# - 基于datagrid c# wpf中的列从datagrid视图中禁用按钮
- html - 试图在引导程序 4 中居中弹性部分
- android - RecyclerView 会不定期更新
- angular - Angular 6显示应用程序引导的进度
- android - WINDOWS:不推荐使用“android”命令