$ docker exec -ti myname-neo4j bin/neo4j-admin dump --database=graph.db --to=/home/name/myname.dumpcommand failed: the database is in use -- stop Neo4j and try again
Sin embargo, si se detiene el proceso Neo4j, que parece ser la única forma de liberar la base de datos, el contenedor se cierra. Este parece ser el comportamiento esperado de Docker. Por lo tanto, parece imposible llamar neo4j-admin dump desde dentro del contenedor sin que la base de datos esté en uso.
¿Cómo se puede resolver esto mientras se sigue usando Docker?
A continuación, puede conservar el contenedor de "volcado" y reutilizarlo, o simplemente eliminarlo. El mismo concepto con el punto de entrada y el parámetro-c se aplicaría para el procedimiento de carga.
Por coincidencia, ahora es mucho más fácil hacer esto en Neo4j 4.0 porque puede detener e iniciar bases de datos sin tener que apagar todo el contenedor de Docker.
Entonces, si quisiéramos tomar un volcado de una base de datos llamada 'foo', haríamos lo siguiente:
Esto creará un nuevo contenedor y volcará los datos en lugar de iniciar el servicio neo4j, luego copiará el volcado en el host, solo actualice y en el suyo