2017-03-01 2 views
0

Ich bin auf Win10 x64 folgen Sie den Anweisungen auf https://docs.bigchaindb.com/projects/server/en/latest/appendices/run-with-docker.htmlBigChainDB in Docker stürzt sofort mit Connection Refused ab?

Weil ich in Fenster renne (und haben $HOME nicht), ist hier die eigentlichen Befehle, die ich renne:

docker run --rm -v "C:/bigchaindb_docker:/data" -ti bigchaindb/bigchaindb -y configure rethinkdb 
docker run -v "C:/bigchaindb_docker:/data" -d --name bigchaindb -p "58080:8080" -p "59984:9984" bigchaindb/bigchaindb start 

Die Der erste Befehl scheint gut zu funktionieren. Ich sehe eine .bigchaindb Datei in meinem C:/bigchaindb_docker Ordner. Der zweite Befehl wird einen Container starten, aber etwa 6 Sekunden später die Containerausfahrten mit Code 1. Ich lief docker start <container> && docker attach <container> und konnte dieses Loch bekommen:

INFO:bigchaindb.commands.bigchain:BigchainDB Version 0.10.0.dev 
INFO:bigchaindb.config_utils:Configuration loaded from `/data/.bigchaindb` 
Traceback (most recent call last): 
    File "/usr/local/lib/python3.5/dist-packages/rethinkdb/net.py", line 271, in __init__ 
    self._socket = socket.create_connection((self.host, self.port), timeout) 
    File "/usr/lib/python3.5/socket.py", line 711, in create_connection 
    raise err 
    File "/usr/lib/python3.5/socket.py", line 702, in create_connection 
    sock.connect(sa) 
ConnectionRefusedError: [Errno 111] Connection refused 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
    File "/usr/local/bin/bigchaindb", line 11, in <module> 
    load_entry_point('BigchainDB', 'console_scripts', 'bigchaindb')() 
    File "/usr/src/app/bigchaindb/commands/bigchain.py", line 401, in main 
    utils.start(create_parser(), sys.argv[1:], globals()) 
    File "/usr/src/app/bigchaindb/commands/utils.py", line 96, in start 
    return func(args) 
    File "/usr/src/app/bigchaindb/commands/bigchain.py", line 201, in run_start 
    _run_init() 
    File "/usr/src/app/bigchaindb/commands/bigchain.py", line 142, in _run_init 
    schema.init_database(connection=b.connection) 
    File "/usr/src/app/bigchaindb/backend/schema.py", line 99, in init_database 
    create_database(connection, dbname) 
    File "/usr/lib/python3.5/functools.py", line 743, in wrapper 
    return dispatch(args[0].__class__)(*args, **kw) 
    File "/usr/src/app/bigchaindb/backend/rethinkdb/schema.py", line 17, in create_database 
    if connection.run(r.db_list().contains(dbname)): 
    File "/usr/src/app/bigchaindb/backend/rethinkdb/connection.py", line 49, in run 
    self._connect() 
    File "/usr/src/app/bigchaindb/backend/rethinkdb/connection.py", line 73, in _connect 
    self.conn = r.connect(host=self.host, port=self.port, db=self.dbname) 
    File "/usr/local/lib/python3.5/dist-packages/rethinkdb/net.py", line 661, in connect 
    return conn.reconnect(timeout=timeout) 
    File "/usr/local/lib/python3.5/dist-packages/rethinkdb/net.py", line 572, in reconnect 
    return self._instance.connect(timeout) 
    File "/usr/local/lib/python3.5/dist-packages/rethinkdb/net.py", line 430, in connect 
    self._socket = SocketWrapper(self, timeout) 
    File "/usr/local/lib/python3.5/dist-packages/rethinkdb/net.py", line 337, in __init__ 
    (self.host, self.port, str(ex))) 
rethinkdb.errors.ReqlDriverError: Could not connect to localhost:28015. Error: [Errno 111] Connection refused 

ich suche in BigChainDB mit und ich weiß nicht viel darüber. Ich würde vermuten, dass es versucht, sich mit rethinkdb zu verbinden und es läuft nicht. Ich weiß nicht, wo ich anfangen soll, das zu beheben, ich habe auch nie rethinkdb benutzt. Ist schon mal jemand auf dieses Problem gestoßen?

+0

Haben Sie die IP-Adresse geändert, um auf Docker Conainer zu zeigen? Die Dokumentation sagt, dass es '172.17.0.1' unter Linux ist. Wie lautet die entsprechende IP unter Windows? EDIT: Mein Fehler, ich nahm an, dass Sie den Master-Zweig verwenden. Für den Anfang würde ich vorschlagen, dass Sie explizite Tags verwenden, wenn Sie die Container angeben, da es uns hilft, besser zu debuggen. :) – krish7919

Antwort

3

Von der ersten Zeile der Protokolle Sie es sieht zur Verfügung gestellt, wie Sie den Master-Zweig ausgeführt werden:

INFO:bigchaindb.commands.bigchain:BigchainDB Version 0.10.0.dev 

Früher war es so, dass die neueste Tag eines BigchainDB (Docker) Bild auf die neueste zeigen würde Meisterzweig. Dies wurde kürzlich geändert, so dass es nun auf die neueste Version verweist, die mit dem Python Package Index (PyPI) übereinstimmt.

Also, wenn Sie das Bild erneut ziehen, sollte es auf die neueste Version aktualisieren, die zum Zeitpunkt des Schreibens 0.9.5 ist. Das heißt:

docker pull bigchaindb/bigchaindb 

oder äquivalent:

docker pull bigchaindb/bigchaindb:latest 

oder Ziehen explizit den Tag 0.9.5:

docker pull bigchaindb/bigchaindb:0.9.5 

Wenn Sie Version 0.9.5, und versuchen, die beiden Befehle Sie es geschrieben sollte funktionieren .

Wenn Sie den letzten Masterzweig verwenden möchten, müssen Sie RethinkDB ausführen, da dieser nicht mehr im Docker-Image eingebettet ist. Detaillierte Anweisungen finden Sie in der Master-Version der BigchainDB-Dokumentation unter Run the backend database.

Verwandte Themen