демон, поэтому два формата обычно идентичны.
ем компьютере с Ubuntu Linux 14.04 работает контейнер Docker, который публично предоставляет порт:
docker run --name spacyapi -d -p 127.0.0.1:7091:7091 jgontrum/spacyapi:en
Я могу подключиться и выполнить команды на сервере в контейнере без проблем с локальной машины. Например:
curl http://localhost:7091/api --header 'content-type: application/json' --data '{"text": "This is a test."}' -X POST
Команда выполняется верно. Однако, если я попробую ту же команду CURL с внешнего компьютера, я получу ошибку «Отказано в соединении»:
curl http://192.5.169.50:5000/api --header 'content-type: application/json' --data '{"text": "This is a test."}' -X POST
curl: (7) Failed to connect to 192.5.169.50 port 7091: Connection refused
Где 192.5.169.50 - это IP-адрес ящика, на котором запущен контейнер Docker.
Я не думаю, что мне нужны какие-либо правила iptables, потому что мне не нужно было настраивать их для сервера Node.JS, работающего на том же компьютере. Все остальные компьютеры в моей локальной сети могут нормально обращаться к серверу Node.JS. Но не контейнер Docker, действующий как сервер.
Как я могу это исправить?