docker - Elastic Beanstalk、带有 Docker 的 Nginx 配置

标签 docker nginx amazon-elastic-beanstalk

我有一个在 Elastic Beanstalk 上运行的应用程序。该应用程序导出 Docker 容器的两个端口。 Nginx 只接受第一个,所以我必须更改配置来添加另一个。

已关注 this postAWS documentation我正在尝试扩展 nginx 配置以添加另一个上游,因此我创建了更多文件来执行此操作:

files:
  "/etc/nginx/conf.d/api-port.conf":
    mode: "000644"
    owner: root
    group: root
    content: |

      upstream docker {
        server 172.17.0.2:4003;
        keepalive 256;
      }

      server {
          listen 4003;

        if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})T(\d{2})") {
          set $year $1;
          set $month $2;
          set $day $3;
          set $hour $4;
        }
          access_log /var/log/nginx/healthd/application.log.$year-$month-$day-$hour healthd;

        access_log    /var/log/nginx/access.log;

        location / {
          proxy_pass            http://docker;
          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;
        }
      }

此文件部署在文件夹 .ebextensions/nginx/conf.d/api-port.conf 中并复制到 EC2 实例,但它不起作用,并且未复制到 /etc/nginx/conf.d 两者之一。

知道发生了什么吗?

提前致谢

最佳答案

您可能希望将文件从 .ebextensions/nginx/conf.d/api-port.conf 移动到 .ebextensions/api-port.config。这应该修复未复制到 /etc/nginx/conf.d

的文件

关于docker - Elastic Beanstalk、带有 Docker 的 Nginx 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56019542/

相关文章:

node.js - Docker仅在构建后运行

docker - Docker插件和带有Jenkins管道的Docker有什么区别

docker - 使用 Docker-Compose 在 Docker Volume 中生成测试 ASP.NET Core 测试结果

python - 502 Bad Gateway 重新加载主管后

django - 如何评估Web服务器的性能?

ubuntu - 我删除了/etc/nginx/sites-enabled/default。如何再生

amazon-web-services - 访问 ElasticBeanstalk EC2 日志文件的更简单方法

node.js - Docker-compose up 以代码 1 退出,但 docker-compose build 成功

node.js - 在 AWS CodeBuild 期间使用 npm install 时未创建 node_modules 目录

java - 如何在 AWS Elastic Beanstalk、连接池和领域上配置 Glassfish