Где Elastic Beanstalk хранит файл конфигурации nginx? И как можно это сделать? - PullRequest
0 голосов
/ 18 января 2019

В моем экземпляре Elastic Beanstalk я могу выбрать Nginx в качестве прокси-сервера перед моим экземпляром.

Тем не менее, он не указывает, где может находиться файл конфигурации (т.е. /nginx/conf.d/proxy.conf), и как вносить в него изменения.

Я нашел некоторую документацию , в которой упоминается файл conf, но не содержится никакой информации о том, как посмотреть его вживую или внести в него изменения.

Кто-нибудь знает, как читать и редактировать конфигурацию nginx в приложении Elastic Beanstalk?

1 Ответ

0 голосов
/ 19 января 2019

Как правило, вы не хотите изменять файлы в экземпляре Elastic Beanstalk. Преимущество этой среды состоит в том, что вы можете раскручивать новые экземпляры по мере необходимости, и вам не нужно прикасаться к ним.

Вы можете немного настроить машины Elastic Beanstalk, используя метод ebextensions . По сути, это структура сценариев и файлов, которая дает вам возможность изменять свою среду. Тем не менее, имейте в виду, что ваш лучший способ отладки - это включить SSH в машину и посмотреть, что делают сценарии запуска. Я чувствую, что Amazon не очень хорошо задокументировал этот процесс, и наблюдать за тем, что он делает, все еще проще.

Я использую Java Elastic Beanstalk и должен изменить порт, который проксируется, с 5000 на 8080. У меня есть файл, который в моей среде заменяет существующий файл прокси. В .ebextensions/nginx/conf.d/elasticbeanstalk в моем дистрибутиве Elastic Beanstalk я включаю следующее как 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;
}

Это для службы REST, которая предоставляет только /integration. Ключ в том, что я должен был получить исходный файл от входа в систему, чтобы увидеть, как была настроена моя среда. В зависимости от типа среды Elastic Beanstalk, выбранные вами настройки могут отличаться. Например, в мире Java есть тип Tomcat и тип приложения Java, и их конфигурация сильно отличается.

...