#spring #mongodb #spring-boot #docker
#spring #mongodb #весенняя загрузка #docker
Вопрос:
Я использую образ docker MongoDB по умолчанию и пытаюсь подключиться с помощью простого приложения Spring Boot в Windows box.
Изображение MongoDB просматривается правильно
У меня есть spring-boot-starter-data-mongodb
в моем пути к классу. я использую всю весеннюю загрузку по умолчанию и использую только приведенное ниже свойство в application.properties.
spring.data.mongodb.host=192.168.99.100
При запуске приложения ошибка отказа в подключении: ошибка подключения
Журналы
019-03-06 06:15:06.096 INFO 4664 --- [ main] org.mongodb.driver.cluster : Cluster created with settings {hosts=[192.168.99.100:27017], mode=MULTIPLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2019-03-06 06:15:06.096 INFO 4664 --- [ main] org.mongodb.driver.cluster : Adding discovered server 192.168.99.100:27017 to client view of cluster
2019-03-06 06:15:06.356 WARN 4664 --- [ main] o.s.d.m.c.m.BasicMongoPersistentProperty : Customizing field name for id property not allowed! Custom name will not be considered!
2019-03-06 06:15:06.928 INFO 4664 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
2019-03-06 06:15:07.164 INFO 4664 --- [68.99.100:27017] org.mongodb.driver.cluster : Exception in monitor thread while connecting to server 192.168.99.100:27017
Чего мне здесь не хватает?
Комментарии:
1. Есть ли у вас файл для подключения с помощью командной строки или compass?
2. Спасибо за проверку, я новичок в Mongo и docker. Как я могу это проверить?
3. Здесь у вас есть инструкции docs.mongodb.com/manual/mongo
4. Да, я могу подключиться с помощью командной строки
5. Возможно, в mongod.conf вам нужно изменить bind_ip = 0.0.0.0. По умолчанию используется localhost
Ответ №1:
Говорит не эксперт по MongoDB, а обычный пользователь Docker: Похоже, вы не публикуете порт, который MongoDB запускает по умолчанию: 27017. Вот почему ваше приложение Spring не смогло установить соединение и выдает это исключение:
Exception in monitor thread while connecting to server 192.168.99.100:27017
Итак, вы можете попробовать опубликовать порт с помощью -p 27017:27017
при инициализации контейнера mongo.