Я пытаюсь подключиться к серверу consul из приложения Spring boot, что не удается, потому что консул весеннего облака, похоже, не читает конфигурацию моего хоста.
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:8500 [localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1] failed: Connection refused: connect
В документации сказано, что нам нужно установить хост консула из файла bootstrap.properties/yml. Я попытался установить spring.cloud.consul.host в формате yml и properties:
spring.cloud.consul.host=myhost (с соответствующим форматом для .properties и .yml)
или
spring.cloud.consul.host=myhost - забавный факт, это работает правильно при передаче в качестве аргумента программы.
Зависимости:
Вы уверены, что файл свойств, в котором вы устанавливаете это, действительно читается?




Cloud consul starter 1.3.x не совместим с spring boot 2.x, поэтому это может быть проблемой. Вместо этого попробуйте версию spring boot 1.5.x.
У меня работает как с Finchley (2.0.x), так и с облачной версией Greenwich (2.1.x) и с весенней загрузкой 2.0.x. Еще здесь. Матрица совместимости находится внизу страницы.
Похоже, ваш файл bootstrap.yml не загружается. У вас есть стартер spring-cloud в качестве зависимости (pom.xml при использовании Maven для сборки)? Если он включен, проблема, вероятно, связана с тем, как вы запускаете приложение. Вы работаете из командной строки или используете Intellij/Eclipe для его запуска? Вероятно, есть что-то в среде выполнения, из-за которой bootstrap.yml не загружается.
Пожалуйста, предоставьте более подробную информацию о том, как вы запускаете это приложение, если у вас все еще есть проблемы с этим.
Вы проверили, что порт консула пингуется чем-то вроде
telnet localhost 8500?