Docker, nginx Зачем нужна деректива resolver в моем случае?

Есть следующая настройка в nginx.conf:

resolver 127.0.0.11 valid=15s;

server {
  listen 80;
  server_name localhost;

  location ^~ /phpmyadmin {
    alias /var/www/phpmyadmin/;
    index index.php;
    location ~ \.php$ {
      try_files $uri = 404;
      include fastcgi_params;
      fastcgi_split_path_info ^\/phpmyadmin\/(.+\.php)(.*)$; # index.php
      fastcgi_param SCRIPT_FILENAME $fastcgi_script_name; 
      fastcgi_pass phpmyadmin:9000;
    }
  }

}

Я пытаюсь понять, для чего здесь понадобилась resolver 127.0.0.11 и почему именно такой адрес? Этот пример я нашел в интернете, без этой директивы у меня phpmyadmin не работает.


Ответы (1 шт):

Автор решения: eri

Чтоб найти домен phpmyadmin, адрес которому выдает докер. Докер отвечает на DNS запросы отдельно от системного ресолвера.

docker запускает dnsmasq на этом адресе чтоб настроить сеть и днс на контейнерах.

→ Ссылка