【发布时间】:2018-10-25 23:39:11
【问题描述】:
我在 EC2 上创建了一个 docker 机器。
然后我创建了一个新的cookiecutter-django 应用程序,并将其保留为普通版。它设置为使用 .env 作为环境变量。 (Cookiecutter-django 包含django-environ 用于访问环境变量。)
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 中都试过了(我确实创建了一个名为 pulsemanager 的 s3 存储桶):
DJANGO_AWS_STORAGE_BUCKET_NAME=pulsemanager
AWS_S3_BUCKET_NAME_STATIC=pulsemanager
AWS_STORAGE_BUCKET_NAME=pulsemanager
无论我尝试什么,我都会遇到错误。
编辑:这不完全是普通的香草。默认情况下,cookiecutter-django 使用 Caddy http 服务器而不是 docker 中的 nginx。这包括 SSL,并且不适用于带有 AWS 证书管理器 SSL 的 AWS 负载均衡器。所以我确实按照this article 更改了默认的production.yml 以引入nginx 而不是Caddy。
【问题讨论】:
标签: django cookiecutter-django