在我的Elastic Beanstalk实例中,我可以选择Nginx作为我的实例前面的代理。
但是,它没有给出配置文件(即/nginx/conf.d/proxy.conf
)可能在哪里的指示,也没有给出如何对其进行更改的指示。
我发现some documentation提到了conf文件,但没有提供如何实时查看它或对其进行更改的信息。
有人知道如何在Elastic Beanstalk应用程序上读取和编辑nginx conf吗?
发布于 2019-01-19 06:47:30
通常,您不希望更改Elastic Beanstalk实例上的文件。该环境的优点是,您可以根据需要旋转新实例,而不需要接触它们。
您可以使用ebextensions方法对Elastic Beanstalk机器进行大量定制。基本上,这是一个脚本和文件结构,使您能够更改您的环境。但是需要注意的是,调试的最佳方法是在机器中启用SSH,并观察启动脚本在做什么。我觉得亚马逊没有很好地记录这个过程,观察它做了什么仍然是最简单的方式。
我使用Java Elastic Beanstalk,并且必须将代理的端口从5000更改为8080。我有一个文件,在我的环境中,它替换了现有的代理文件。在我的Elastic Beanstalk分发文件的.ebextensions/nginx/conf.d/elasticbeanstalk
中,我以00_application.conf
的形式包含了以下内容
#
# default is 404 - no need to allow anything else
#
location / {
return 404;
}
#
# this is our default url path prefix
#
location /integration {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
这是针对仅公开/integration
的REST服务的。关键是我必须从登录机器中获得初始文件,以查看我的环境是如何配置的。根据您选择的Elastic Beanstalk环境类型,您的设置可能会有所不同。例如,在Java世界中,有Tomcat类型和Java应用程序类型,两者的配置非常不同。
https://stackoverflow.com/questions/54259742
复制相似问题