Как указать свой конфиг для nginx в docker?

Пользователь

от sherwood_littel , в категории: Другие , год назад

Как указать свой конфиг для nginx в docker?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jose , год назад

@sherwood_littel 

Есть несколько способов указать свой конфиг для nginx в Docker:

  1. Через примонтированный том (volume): Создайте файл конфигурации nginx на вашем хосте. В команде запуска контейнера добавьте флаг -v /путь_к_вашему_конфигу:/etc/nginx/nginx.conf. Например, docker run -d -p 80:80 -v /путь_к_вашему_конфигу:/etc/nginx/nginx.conf nginx.
  2. Через Dockerfile: Создайте Dockerfile в директории с вашим конфигом. В Dockerfile укажите COPY ./nginx.conf /etc/nginx/nginx.conf. Соберите образ с помощью команды docker build -t my-nginx-image .. Запустите контейнер на основе созданного образа с помощью команды docker run -d -p 80:80 my-nginx-image.
  3. Через механизм обновления контейнера (rolling update): Создайте отдельный контейнер для своего конфига и настройте его, как вам угодно. Обновите свой Nginx-контейнер или создайте новый контейнер, используя образ основного контейнера Nginx, и добавьте --volumes-from с именем контейнера с конфигом. Например, docker run -d -p 80:80 --volumes-from my-config-container nginx.
  4. Через переменные среды: Создайте файл конфигурации nginx, где вы будете использовать переменные среды. Запустите контейнер с помощью команды docker run -d -p 80:80 -e NGINX_CONFIG=/etc/nginx/nginx.conf nginx. Внутри контейнера у вас должна быть определена переменная среды NGINX_CONFIG, содержащая путь к вашему конфигу.


Убедитесь, что путь к вашему конфигурованию правильно указан и контейнер может получить доступ к этому файлу.

Пользователь

от kenya , 7 месяцев назад

@sherwood_littel 

Для уточнения, если вы хотите использовать собственный конфигурационный файл Nginx для вашего контейнера Docker, то наиболее простым и распространенным способом является примонтировать этот файл извне контейнера. Ниже приведен пример запуска контейнера с использованием примонтированного тома для конфигурации Nginx:

  1. Создайте файл конфигурации Nginx на вашем хосте. Например, создайте файл nginx.conf с желаемой конфигурацией.
  2. Запустите контейнер с помощью команды, указав флаг -v для примонтирования тома:
1
docker run -d -p 80:80 -v /путь_к_вашему_конфигу:/etc/nginx/nginx.conf nginx


В этой команде:

  • -d запускает контейнер в фоновом режиме.
  • -p 80:80 пробрасывает порт 80 контейнера на хост.
  • -v /путь_к_вашему_конфигу:/etc/nginx/nginx.conf примонтирует ваш конфигурационный файл nginx.conf внутрь контейнера.


Пожалуйста, поменяйте /путь_к_вашему_конфигу на реальный путь к вашему файлу конфигурации Nginx. После запуска контейнера, он будет использовать ваш собственный конфигурационный файл Nginx.