Невозможно достичь порта контейнера, работающего в режиме хоста.Linux

Anonymous
Невозможно достичь порта контейнера, работающего в режиме хоста.

Сообщение Anonymous »

Я пытался запустить Homebridge в контейнере на Raspberry Pi, вот определение docker-compose.yaml:

Код: Выделить всё

services:
homebridge:
image: homebridge/homebridge:latest
container_name: homebridge
restart: always
network_mode: host
environment:
- PGID=1099
- PUID=1099
- HOMEBRIDGE_CONFIG_UI=1
- HOMEBRIDGE_CONFIG_UI_PORT=8581
volumes:
- /raid/config/homebridge:/homebridge
Приложение запускается успешно, и в журналах я вижу, что HTTP-сервер запущен и работает:

Код: Выделить всё

[10/3/2024, 10:30:14 PM] [Homebridge UI] Homebridge UI v4.59.0 is listening on :: port 8581
Теперь, если я сверну порт, мне будет отказано в соединении:

Код: Выделить всё

$ curl localhost:8581
curl: (7) Failed to connect to localhost port 8581: Connection refused
Что для меня не имеет смысла, так это то, что если я выполню в контейнере и сделаю то же самое, вызов пройдет:

Код: Выделить всё

$ docker exec -it 3783843255f7 /bin/bash
Note: This is a restricted shell, sudo cannot be used here.

Homebridge Terminal

Node.js Version: v20.17.0
Node.js Path: /opt/homebridge/bin/node
Plugin Path: /var/lib/homebridge/node_modules

Update Node.js: hb-service update-node

Install Plugin: hb-service add homebridge-plugin-name
Remove Plugin: hb-service remove homebridge-plugin-name

root@tardis:/homebridge $ curl localhost:8581


...
Почему порт 8581 недоступен снаружи, хотя контейнер работает в режиме хост-сети?

Подробнее здесь: https://stackoverflow.com/questions/790 ... -host-mode

Вернуться в «Linux»