2016-07-20 5 views
0

Я использую pyorient 1.5.4 и докер для orientdb 2.2.5pyorient не может подключиться к orientdb Docker

Если я использую браузер для подключения к базе данных, сервер явно работает. Если я подключаюсь к пиориенту, я получаю сообщение об ошибке.

Вот код, который я использую для подключения к базе данных:

import pyorient 

database = pyorient.OrientDB('127.0.0.1', 2424) 
database.db_open(
       'myDB', 
       'root', 
       'mypassword', 
       db_type='graph' 
      ) 

я получаю следующее сообщение об ошибке:

pyorient.exceptions.PyOrientConnectionException: Server seems to have went down 

Я создал Docker контейнер с помощью следующей команды:

docker run -d --name orientdb -p 2424:2424 -p 2480:2480 -v /home/myuser/Code/database:/orientdb/databases -e ORIENTDB_ROOT_PASSWORD=mypassword orientdb:latest /orientdb/bin/server.sh -Ddistributed=true 

Сервер работает, потому что соединение через браузер отлично работает.

Похоже, необходимые порты открыты, так почему pyorient считает, что база закрыта?

ответ

2

я нашел мою проблему. Я начинал контейнер докера с:

-Ddistributed=true 

Извлечение параметра позволило мне подключиться просто отлично.

Однако, я обнаружил, что pyorient попадет в бесконечный цикл при попытке разобрать пакеты, которые вернулись из orientDB под распределенным режимом. Это связано с ошибкой на пиориенте. Более подробная информация об этом объясняется здесь:

https://github.com/mogui/pyorient/issues/215#issuecomment-245007336

Смежные вопросы