Я создал докер на EC2.
Затем я создал новое приложение cookiecutter-django и оставил его простым ванилью.Он настроен на использование .env для переменных среды.(Cookiecutter-django включает django-environment для доступа к переменным окружения.)
docker-compose -f production.yml build
работал нормально.
docker-compose -f production.yml up
выдает эту ошибку:
django_1 | botocore.exceptions.ParamValidationError: Parameter validation failed:
django_1 | Invalid bucket name "": Bucket name must match the regex "^[a-zA-Z0-9.\-_]{1,255}$"
Исследуя эту ошибку, советовал устанавливать различные переменные окружения.Поэтому я попробовал их все в .env (я создал корзину s3 с именем pulsemanager):
DJANGO_AWS_STORAGE_BUCKET_NAME=pulsemanager
AWS_S3_BUCKET_NAME_STATIC=pulsemanager
AWS_STORAGE_BUCKET_NAME=pulsemanager
Независимо от того, что я пытаюсь, я застрял с ошибкой.
РЕДАКТИРОВАТЬ: Это не совсем обычная ваниль.По умолчанию cookiecutter-django использует http-сервер Caddy вместо nginx в Docker.Это включает SSL и не будет работать за балансировщиком нагрузки AWS с менеджером сертификатов AWS SSL.Поэтому я изменил файл production.yml по умолчанию, чтобы он использовал nginx вместо Caddy, следуя этой статье .