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

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

от sherwood_littel , в категории: Другие , 7 месяцев назад

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

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

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

от jose , 6 месяцев назад

@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, содержащая путь к вашему конфигу.


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