Цель: Я хочу настроить графическую базу данных и в конечном итоге получить доступ к данным из набора * * * * * * * * * * * * '' * * '* * * * * * * * цель 1: В качестве учебного упражнения вместо использования приложения Nodejs я первоначально собираюсь использовать консоль gremlin в контейнере docker на моей локальной машине. - Я использую контейнер docker tinkerpop/gremlin-console:latest
Промежуточная цель 2: Запустите Janusgraph (Berkeleyje / Lucern / gremlin-server) в контейнере docker на виртуальной машине на удаленный сервер в моей организации (я не хочу никаких облачных предложений, пожалуйста) - я использую контейнер docker janusgraph/janusgraph:latest
v3.4.4
Исправленная промежуточная цель 2: Из-за проблем с подключением, запустите Janusgraph (Berkeleyje / Lucern / gremlin-server) в контейнере docker на моей локальной машине, совмещенном с контейнером docker, на котором работает gremlin-console
Шаги:
- Я вытащил сервер docker изображение с
docker pull janusgraph/janusgraph:latest
- Я запустил изображение с
docker run -it -p 8182:8182 janusgraph/janusgraph:latest /bin/bash
(также с imageID) - Из консоли в работающем контейнере
/opt/janusgraph/bin/gremlin-server.sh
Это вернуло: (отрезано)
3321 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - The org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV3d0 serialization class is deprecated.
3370 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v3.0+gryo with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV3d0
3370 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - The org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV3d0 serialization class is deprecated.
3371 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v3.0+gryo-stringd with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV3d0
3395 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v3.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV3d0
3395 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV3d0
3397 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - The org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0 serialization class is deprecated.
3398 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
3400 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - The org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0 serialization class is deprecated.
3400 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo-lite with org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0
3400 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - The org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0 serialization class is deprecated.
3401 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo-stringd with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
3401 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - The org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0 serialization class is deprecated.
3405 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v2.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0
3405 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - application/json already has org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV3d0 configured - it will not be replaced by org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0, change order of serialization configuration if this is not desired.
3410 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v1.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0
3411 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - application/json already has org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV3d0 configured - it will not be replaced by org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, change order of serialization configuration if this is not desired.
3458 [gremlin-server-boss-1] INFO org.apache.tinkerpop.gremlin.server.GremlinServer - Gremlin Server configured with worker thread pool of 1, gremlin pool of 8 and boss thread pool of 1.
3458 [gremlin-server-boss-1] INFO org.apache.tinkerpop.gremlin.server.GremlinServer - Channel started at port 8182.
Я надеялся, что предупреждения класса сериализации были несущественно
Я вытащил консоль docker изображение с помощью
docker pull tinkerpop/gremlin-console:latest
Я запустил изображение с помощью
docker run -it -p 8182:8182 tinkerpop/gremlin-console:latest /bin/bash
(также с imageID) (в неколокативной версии я настроил
/opt/gremlin-console/conf/remote.yaml
, чтобы указать
host
на имя хоста сервера - который был разрешен к его IP из контейнера)
hosts: [localhost] # OR [ the remote hostname ] as per the two versions of goal 2
port: 8182
serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GraphBinaryMessageSerializerV1, config: { serializeResultToString: true }}
С консоли в работающем контейнере
/opt/janusgraph/bin/gremlin.sh
С консоли gremlin
remote connect tinkerpop.server conf/remote.yaml
, которая возвратилась
gremlin> :remote connect tinkerpop.server conf/remote.yaml
==>Configured localhost/127.0.0.1:8182
Из консоли gremlin
:remote console
(для переключения всех последующих команд на удаленный gremlin-сервер)
Проблема Казалось, что консоль подключалась к серверу, но когда я запустился gremlin> :> graph = TinkerGraph.open(conf/gremlin-server/conf/gremlin-server/janusgraph-berkeleyje-server.properties)
он ответил Host did not respond in a timely fashion - check the server status and submit again.
Это то же самое, пытаюсь ли я подключить совмещенный или удаленный gremlin-сервер
Что теперь делать? Где искать? Почему Gremlin ТАК ТРУДНО!
Проблема с мета Мне неясно (и документация не объясняет), ожидает ли :> TinkerGraph.open(server.properties)
путь к серверу .properties
, локальный файл к консоли или (более вероятно, я думаю) путь относительно удаленного сервера
I wi sh документы воспринимались как должное и (для чего должно быть только ограниченное количество архитектурных шаблонов *) объяснены и отдельно все, что требуется
*
- Сервер и клиент находятся на одном компьютере, совместно используя ресурсы / сеть & c.
- Сервер и клиент в контейнере на машине, как заставить их общаться (через изоляцию контейнера)
- Сервер на удаленном компьютере с клиентом (с контейнеризацией и без)