docker를 사용하여 php-fpm chroot에서 DNS 확인에 실패함

docker를 사용하여 php-fpm chroot에서 DNS 확인에 실패함

Docker를 사용하여 chroot 환경에서 nginx+를 설정하려고 합니다 .nextcloud:fpm

소프트웨어가 인터넷에 연결할 수 없다고 보고하는 것을 제외하고는 지금까지 모든 설정 및 작동이 이루어졌습니다. 예외는 입니다 Could not resolve host: www.github.com. IP 주소를 제공하면 시간 초과가 발생합니다.

docker 컨테이너에서 컬을 실행하면 잘 실행됩니다. docker exec nextcloud curl www.github.com그리고 bash의 대화형 모드에서 PHP를 사용할 때도 작동했습니다. 또한 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

chroot가 작동하도록 하기 위해 docker에 다음 볼륨을 마운트했습니다. (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가 호스트 이름을 확인하기 위해 누락된 것이 무엇인지 알고 싶습니다.

관련 정보