我正在使用一个zip文件部署我的应用程序,该文件包含我的应用程序jar,docker配置文件和一个.ebextensions
文件夹,其中包含一个nginx/conf.d/custom.config
文件。
在我的custom.config中,只有一行可以增加nginx上传文件的大小限制:
client_max_body_size: 16M
但是控制台显示:
错误处理文件(跳过):“。ebextensions / nginx / conf.d / custom.config”-包含无效密钥:“ client_max_body_size”。有关有效密钥的信息,请参见http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html
我遵循的guide扩展了默认的nginx设置。 引用:
要扩展Elastic Beanstalk的默认nginx配置,请将.conf
配置文件添加到应用程序源包中名为.ebextensions/nginx/conf.d/
的文件夹中。 Elastic Beanstalk的nginx配置自动在此文件夹中包含.conf
个文件。
我将.conf
更改为.config
,因为第一个在部署过程中甚至没有触发ELB环境更新。
答案 0 :(得分:1)
我尝试了所有添加实现级别配置的.ebextensions方法,但在最新的Amazon Linux AMI中没有帮助。对于最新的Amazon Linux AMI,您需要遵循以下结构以增加上传大小。您需要遵循此结构以增加上传大小限制。
将以下文件夹设置添加到项目文件夹的根目录中。
文件夹结构(.platform / nginx / conf.d / proxy.conf)
.platform/
nginx/
conf.d/
proxy.conf
将此行添加到proxy.conf(在.platform / nginx / conf.d /文件夹中)
client_max_body_size 50M;
提交此文件,然后使用eb deploy
重新部署。
答案 1 :(得分:0)
我认为Elastic Beanstalk正在尝试将custom.config作为EB配置文件进行处理。尝试将custom.config
移至.ebextensions/nginx/custom.conf
(注意文件扩展名的更改)
答案 2 :(得分:0)
我设法通过添加一个beantalk配置文件.ebextensions/add_nginx_config.config
来使其工作,该文件将我的custom-nginx.conf
文件复制到ec2实例的conf.d
文件夹中。
add_nginx_config.config:
container_commands:
copy:
command: "cp nginx-custom.conf /etc/nginx/conf.d/"
所以我的应用程序资源束树如下所示:
app.zip
|-application.yml
|-app.jar
|-nginx-custom.conf
|-.ebextensions
|-add_nginx_config.config