Назад | Перейти на главную страницу

должен ли я использовать разные файлы Dockerrun.aws.json для aws eb или устанавливать переменные среды через консоль eb

скажем, у меня есть несколько сред ElasticBeanstalk:

Каждая среда имеет действительно похожий Dockerrun.aws.json (какие тома должны быть связаны), но разные переменные среды (например, каков URL-адрес базы данных RDS, каков пароль для RDS, ключ API мандрила ...)

должен ли я хранить переменные среды для каждой среды в собственном файле (qa-Dockerrun.aws.json, prod-Dockerrun.aws.json, ...) и сообщить eb deploy использовать этот файл (если да, то как я могу это сделать?)

или

я должен установить среду с eb setenv POSTGRES_PASS=xyzsecretabc док и не поместите их в Dockerrun.aws.json

Любые другие предложения приветствуются

Я хочу, чтобы моя конфиденциальная информация не хранилась в git конечно

Спасибо

Потратив некоторое время, я решил, что это решение:

сделать и то, и другое :)

Трудно отслеживать все переменные среды в эластичном beanstalk (и, очевидно, есть ограничение на количество, не проверял это doh), и глупо передавать пароли вашей базы данных для контроля версий.

держать вещи, которые уже являются общедоступными, например DB_PORT_5432_TCP_ADDR (Общедоступный DNS RDS), DB_ENV_POSTGRES_USERNAME (имя пользователя postgres), REDIS_PORT_6379_TCP_ADDR, S3_BUCKET_NAME(сегмент хранения активов) в Dockerrun.aws.json и под контролем версий (git)

но такие вещи как DB_ENV_POSTGRES_PASSWORD, SECRET_KEY_BASE, MANDRIL_API_TOKEN, AWS_SECRET_ACCESS_KEY как среды Elastic Beanstalk