У меня есть готовое приложение Spring Data Neo4j, которое отлично работает при разговоре с сервером Neo4j, запущенным на моем компьютере. Под словом «из коробки» я подразумеваю, что единственная конфигурация, которую я сделал в приложении, - это указание имени пользователя и пароля для Neo4j.
Приложение (запускаемое с помощью ./gradlew bootRun) отлично работает и с докеризованным сервером Neo4j.
Когда я создаю докер-образ этого приложения, он не может подключиться к серверу Neo4j, независимо от того, подключен он или нет.
Когда он работает, он говорит:
2019-01-18 12: 58: 49.311 INFO 18345 --- [restartedMain] Драйвер: Прямой экземпляр драйвера 1080149308 создан для адреса сервера localhost: 7687
Когда он не работает, он говорит:
2019-01-18 02: 27: 53.760 INFO 1 --- [main] Driver: Прямой экземпляр драйвера 707892422, созданный для адреса сервера localhost: 7687
2019-01-18 02: 27: 54.100 INFO 1 --- [main] ConnectionPool: закрытие пула подключений к localhost: 7687
[...]
Вызвано: org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannel $ AnnotatedConnectException: в соединении отказано: localhost / 127.0.0.1: 7687
Я пробовал связать два докера (приложение и докер Neo4j) с помощью --link. Тот же результат.
Я пробовал их сочинять:
version: '3'
services:
docker-neo:
image: neo4j:3.5
ports:
- 7687:7687
- 7474:7474
godojo:
image: com.greenasjade.j01/j01
depends_on:
- docker-neo
ports:
- 8081:8081
Никакой радости.
Мне нужно получить докеризованное решение.
bolt://host.docker.internal:7687
). После этого теперь он терпит неудачу во время создания образа Docker, потому что тест не проходит из-за невозможности подключения к хосту. Я предполагаю, что это потому, что тест выполняется как тест локального компьютера, а не как изображение докера? Вы можете помочь с этим? 18.01.2019