Разрешение DNS не удается в php-fpm chroot с использованием docker

Разрешение DNS не удается в php-fpm chroot с использованием docker

Используя Docker, я пытаюсь настроить nginx+ nextcloud:fpmв среде chroot.

Все настроено и работает до сих пор, за исключением того, что программное обеспечение сообщает, что не может подключиться к Интернету, исключение гласит Could not resolve host: www.github.com. Предоставление IP-адресов приводит к тайм-аутам.

Запуск curl на контейнере docker работает просто отлично: docker exec nextcloud curl www.github.comи когда я использовал php в интерактивном режиме в bash, это также сработало. Также, когда я удалил chroot и исправил пути в nginx, это сработало.

Значит, дело в конфигурации php-fpm, но я не могу найти, в чем она заключается.

Вот мой конфиг для php:

www.conf

[www]
user = www-data
group = www-data
listen = 9000
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
chroot = /var/www/html

У меня есть следующие тома, смонтированные в docker для работы chroot: (они не доступны из nginx)

  - '/dev/urandom:/var/www/html/dev/urandom'
  - '/dev/null:/var/www/html/dev/null'
  - '/dev/zero:/var/www/html/dev/zero'
  - '/etc/timezone:/var/www/html/etc/timezone'
  - '/etc/resolv.conf:/var/www/html/etc/resolv.conf'
  - '/etc/hosts:/var/www/html/etc/hosts'
  - '/etc/host.conf:/var/www/html/etc/host.conf'
  - '/etc/nsswitch.conf:/var/www/html/etc/nsswitch.conf'
  - '/etc/localtime:/var/www/html/etc/localtime'
  - '/usr/share/zoneinfo:/var/www/html/usr/share/zoneinfo'

Я хотел бы узнать, чего не хватает моему PHP для разрешения имен хостов.

Связанный контент