NGINX — это веб-сервер с открытым исходным кодом, HTTP Cache, обратный прокси-сервер и балансировщик нагрузки и используется более чем на 50% самых загруженных в мире сайтов. И Docker с nginx — идеальная комбинация для автоматизации вашего развертывания приложения.
Автоматическое тестирование является неотъемлемой частью трубопроводов CI/CD. Было бы неплохо иметь еще один чек на файл конфигурации nginx.
Автоматизация валидации файла конфигурации NGINX с использованием Docker.
docker run -v $pwd/config:/data/ --name check-nginx-conf -t -a stdout nginx:latest nginx -t -c /data/nginx.conf
- -v $ pwd/config:/data/ : свяжите свой $ pwd/config к /data внутри контейнера. Убедитесь, что у вас есть Nginx.conf внутри конфигурации и другие каталоги, которые ваш файл конфигурации использует папку EXT SSL.
- -Нам файл check-nginx-conf : Название контейнера.
- -t-stdout. : Прикрепите к стандартному потоку Stdout, чтобы получить журналы.
- nginx: последние : Версия изображения nginx.
- nginx -t -c : -t Чтобы подтвердить файл конфигурации и -C Чтобы использовать альтернативный файл конфигурации вместо файла по умолчанию.
Вы должны увидеть этот вывод, если ваш конфиг действителен
Кроме того, вы можете использовать команду grep, чтобы проверить, если Тест успешен
docker run -v $pwd/config:/data/ --name check-nginx-conf -t -a stdout nginx:latest nginx -t -c /data/nginx.conf | grep "test is successful" | wc -l
Греп «Тест успешно» вернется линию, которая содержит Тест успешен и WC -L подсчитать количество линий.
Если синтаксис действителен, вы получите 1 иначе 0 0
Оригинал: «https://dev.to/idevkamboj/validate-nginx-conf-file-using-docker-ki4»