LINUX.ORG.RU

Почему для fastcgi_pass: 127.0.0.1:9000 работает, а localhost:9000 нет?

 , , ,


0

1

Всем привет! Может мне кто-нибудь объяснит, я пока всю голову сломал?
Собрал я значицца в кубере (minikube) мультиконтейнерный под (т.е. один под в котором два контейнера в связке: nginx+php).
В конфиге nginx, там где про РНР, вот так работает:
fastcgi_pass 127.0.0.1:9000;

а вот так контейнер с nginx падает (пишет: php_upstream не работает типа):
fastcgi_pass localhost:9000;

вот так - тоже падает кстати (название контейнера само собой php):
fastcgi_pass php:9000;

Гляжу в /etc/resolv.conf: в обоих контейнерах прописано: 127.0.0.1 localhost

ниче не пойму, загадка дыры какая-то.
в docker-compose помню попроще было, там просто имя сервиса подставляешь: php:9000
Может кто-то натолкнет мысль, куда еще покурить?
Хочется разобраться в этих хитросплетениях.

Всем спасибо!


Гляжу в /etc/resolv.conf: в обоих контейнерах прописано: 127.0.0.1 localhost

Это должно быть прописано в /etc/hosts, resolve.conf нужен для указания адресов dns серверов и порядка поиска.

один под в котором два контейнера в связке: nginx+php

Не надо так.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)

вот так - тоже падает кстати (название контейнера само собой php)

Так можно, но нужно сначала объявить сервис php. Тогда он будет резольвиться в dns кластера.

no-such-file ★★★★★
()
Ответ на: комментарий от Twissel

nginx container

Kubernetes-managed hosts file.

127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
fe00::0 ip6-mcastprefix
fe00::1 ip6-allnodes
fe00::2 ip6-allrouters
172.17.0.7 nginxphp2-7bcbbdc94d-p5sz5


php container

Kubernetes-managed hosts file.

127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
fe00::0 ip6-mcastprefix
fe00::1 ip6-allnodes
fe00::2 ip6-allrouters
172.17.0.7 nginxphp2-7bcbbdc94d-p5sz5

kwasar
() автор топика
Ответ на: комментарий от no-such-file

один под в котором два контейнера в связке: nginx+php

Не надо так.

А почему?
Я смотрю и так, и так делают.
Просто у меня микросервисы намечаются. Соответственно один под - один МС (+ 1шт Service на каждый под).
Если под сдох - снес-поднял.
Есть какие-то объективные причины почему надо по подам разносить?

kwasar
() автор топика

127.0.0.1:9000 конектится по IPv4.
А localhost:9000, скорее всего, по IPv6.
Копай в эту сторону. Попробуй IPv6 отключить, что ли.

bigbit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.