Приложение Dockerized Aurelia не видно вне контейнера Docker - не прослушивает 0.0.0.0 - PullRequest
0 голосов
/ 04 ноября 2019

Я запускаю приложение Aurelia внутри стандартного док-контейнера узла, и оно прослушивает порт 8080. Внутри контейнера я проверил, что оно работает с использованием curl;и он отвечает ожидаемым HTML. Но я не могу связаться с приложением через сопоставленный порт на хосте (за пределами контейнера).

Я запускаю следующую команду, чтобы запустить контейнер

$ docker run -it --rm -p 8080:8080 -v ${PWD}:/app node bash

Затем внутри контейнера,Я устанавливаю Cli и создаю новое приложение

# npm install -g aurelia-cli
# au new

После создания приложения по умолчанию я cd в каталог приложения и запускаю приложение.

# au run

Как я уже говорил вышеЯ могу убедиться, что приложение работает, используя curl http://localhost:8080. Однако на хосте я не могу получить доступ к приложению:

$ curl http://localhost:8888
curl: (52) Empty reply from server

Изначально я думал, что это проблема с докером. См. этот вопрос . Но оказывается, что Аурелия слушает localhost, а не 0.0.0.0.

1 Ответ

1 голос
/ 04 ноября 2019

Запуск Aurelia с установленным параметром host позволяет серверу прослушивать 0.0.0.0, поэтому он будет правильно отображаться в док-контейнере.

au run --host 0.0.0.0 
...