Я хочу запустить простое приложение Spring Boot на моей Ubuntu 16.04.6 x64
капле.Чтобы разрешить входящие соединения, мне пришлось открыть порт 8080, поскольку именно здесь встроенный сервер Tomcat в весеннем загрузочном фляге будет прослушивать соединения.
Я использовал команду ufw allow 8080
, и теперь я вижу это на себеdroplet.
#ufw status
Status: active
To Action From
-- ------ ----
8080 ALLOW Anywhere
22 ALLOW Anywhere
80 ALLOW Anywhere
8080 (v6) ALLOW Anywhere (v6)
22 (v6) ALLOW Anywhere (v6)
80 (v6) ALLOW Anywhere (v6)
Я убедился, что мое приложение запущено:
java -jar myservice.jar &
Netstat сообщает, что что-то прослушивает 8080:
# netstat -aon
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State Timer
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN off (0.00/0/0)
tcp 0 XXX XX.XXX.XX.XXX:22 XX.XX.XXX.XX:64021 ESTABLISHED on (0.11/0/0)
tcp6 0 0 :::8080 :::* LISTEN off (0.00/0/0)
tcp6 0 0 :::22 :::* LISTEN off (0.00/0/0)
Еще когда ясделать telnet вне сервера, который я получаю:
telnet XX.XXX.XX.XXX 8080
Connecting To XX.XXX.XX.XXX...Could not open connection to the host, on port 8080: Connect failed
И когда я делаю telnet на сервере, я получаю:
# telnet localhost 8080
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
В панели управления брандмауэра Digital Ocean у меня есть следующие настройки:
HTTP
запросы к серверу просто зависают и никогда не возвращаются.Судя по отсутствию журналов, они даже не достигают сервера Tomcat.
Что мне не хватает?Будем очень благодарны за любые предложения!
ОБНОВЛЕНИЕ 1:
Локальные (внутри сервера) запросы curl к моей конечной точке проверки работоспособности также зависали.Однако я оставил один на более длительный период и получил журнал приложений:
2019-05-13 18:39:48.723 WARN 5873 --- [nio-8080-exec-2] o.a.c.util.SessionIdGeneratorBase : Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [214,287] milliseconds.
Это объясняло, почему запрос зависал, поэтому применение ответа из этого поста исправило это.Теперь я могу подключиться к своей конечной точке на сервере, и она отвечает.
Однако за пределами коробки запросы все еще не поступают на сервер.Telnet снаружи все еще говорит Could not open connection to the host, on port 8080
.