26 / 26 / 10
Регистрация: 19.06.2014
Сообщений: 158
|
|
1 | |
Docker и нестандартные порты23.08.2022, 17:49. Показов 383. Ответов 2
Я создал 2 сервиса в Docker (у каждого сервиса свой docker-compose.yml, включающий контейнеры nginx + php-fpm).
Сервис #1 на порту 48801. Сервис #2 на порту 48802. IP моего сервера 99.99.99.44 (CentOS 8). Я отправляю CURL-запрос (через PHP) изнутри Сервиса #1 на Сервис #2 (т.е. на 99.99.99.44:48802). Но получаю следующую ошибку: Код
Failed to connect to 99.99.99.44 port 48802 after 1017 ms: Host is unreachable (Сам я не сисадмин). Немного деталей. - На другом сервере (тоже CentOS 8) проблем нет. - Запрос изнутри контейнера на 80 порт этого же сервера проходит. - Запрос из консоли (не изнутри контейнера) на нестандартный порт 48802 проходит. - Оба сервиса доступны в браузере (через нестандартные порты). - SELinux отключен. - Firewalld отключен. Вывод моего ip route (если нужно): Код
default via 99.99.99.1 dev eno1 proto static metric 100 99.99.99.1 dev eno1 proto static scope link metric 100 172.18.0.0/16 dev br-2f405adcc89d proto kernel scope link src 172.18.0.1 172.19.0.0/16 dev br-19c596fe7618 proto kernel scope link src 172.19.0.1
0
|
23.08.2022, 17:49 | |
Ответы с готовыми решениями:
2
Не могу создать образ Docker, подскажите как сделать. Вылазить ошибка. docker-file. Новичок в докере Docker, IP Host -> Docker responce Нестандартные способы добыть дрова - или нестандартные дрова) При загрузке с флешки USB порты в Windows есть. А при загрузки с HDD порты не работают Закрыть порты на серверном терминале (какие порты в данном случае можно закрыть?) |
3462 / 2473 / 695
Регистрация: 02.08.2011
Сообщений: 6,705
|
|
23.08.2022, 21:43 | 2 |
Насколько я знаю, обычно сервисы внутри docker-а могут общаться между собой напрямую, по своим внутренним портам, с предварительно нестроенной сетью (или default bridged network).
При этом это все работает с разрешением имен, в качестве которых можно использовать имена контейнеров, кажется так. А вы пытаетесь изнутри "коробки" дернуть внешний интерфейс другого сервиса. Как-то это нерациональн, что-ли, даже если и возможно. Вообщем так никто не делает. Используйте внутренние интерфейсы, и все должно заработать. Добавлено через 2 минуты Попробуйте настроить им одну общую сеть. По-хорошему, два сервиса - два Dockerfile-а. И собрать в docker-compose. Вроде именно так по фэншую.
0
|
26 / 26 / 10
Регистрация: 19.06.2014
Сообщений: 158
|
|
23.08.2022, 23:42 [ТС] | 3 |
Все верно, контейнеры могут общаться в одной сети. Но для меня это не вариант по многим причинам. Опишу только пару из них:
- На самом деле сервисов очень много, и все построены по схожему принципу. Придется выполнить большую работу, чтобы переименовать все контейнеры (во избежание конфликтов при объединении в одну сеть); - Позднее часть сервисов будет вынесена на отдельные сервера. Один конкретный сервис состоит из нескольких контейнеров, каждый из них имеет свой Dockerfile.
0
|
23.08.2022, 23:42 | |
23.08.2022, 23:42 | |
Помогаю со студенческими работами здесь
3
Нестандартные задания Нестандартные шрифты Нестандартные окна в VB Нестандартные формы и XP Нестандартные нейроны Нестандартные дисплеи Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |