Docker на Elastic Beanstalk => Запуск терминала с настройкой среды - PullRequest
0 голосов
/ 07 февраля 2019

Запуск EBS с контейнером с одним докером.Я использовал конфигурацию переменных среды EBS для установки таких вещей, как строки подключения и т. Д.

Я хотел бы подключиться к машине и запустить терминал в новом контейнере.

Это простодостаточно, мне просто нужно:

eb ssh

, а затем

sudo docker run -it my-image bash

Однако я хочу, чтобы эта терминальная среда имела ту же конфигурацию, что и приложение (подумайте о запуске heroku).

Похоже, что среда собрана для реального запуска приложения в /opt/elasticbeanstalk/hooks/appdeploy/enact/00run.sh, но мне не повезло, что он был адаптирован к моим целям.

Есть ли одобренный способ сделать это?

1 Ответ

0 голосов
/ 07 февраля 2019

Этот вопрос тесно связан с 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
...