当使用docker环境将Django应用程序部署到EB时,静态文件返回404。
我在docker容器中使用gunicorn,由于不建议/不可能通过gunicorn提供静态文件服务,因此我想配置EB nginx使用主机文件系统来提供它们。
Dockerfile
FROM python:3
....
....
# Expose listen ports
EXPOSE 8002
RUN chmod +x ./docker/container_start.sh
CMD ["sh", "./docker/container_start.sh"]
Dockerrun.aws.json
{
"AWSEBDockerrunVersion": "1",
"Ports": [
{
"ContainerPort": "8002"
}
],
"Volumes": [
{
"ContainerDirectory": "/app/assets",
"HostDirectory": "/var/app/current/assets"
}
]
}
我该如何告诉 EB nginx 从
/var/app/current/assets
提供/assets/
*,并将其余内容代理到Docker容器?以下配置不起作用,因为它是在Docker环境中。option_settings:
"aws:elasticbeanstalk:container:python:staticfiles":
"/static/": "www/static/"