docker run -d -v /home/data:/data --name=neo neo4j
在docker中运行neo4j之后,
docker exec -it neo bash
./neo4j-admin dump --database=graph.db --to=/home/2018.dump
它将显示neo4j正在运行
command failed: the database is in use -- stop Neo4j and try again
但是./neo4j stop
将获得neo4j not running
我该怎么办?
答案 0 :(得分:0)
以前我也遇到过同样的问题,所以我写了这个变通办法来转储neo4j数据并将其从容器中拉出到主机。
docker rm --force neo4j-dump
docker run \
--name neo4j-dump \
--env-file /storage/bin/.neo4j.env \
--mount type=bind,source=<neo4j_data_folder>,target=/data \
neo4j bin/neo4j-admin dump --database=graph.db --to=/graph.db.dump
docker cp `docker ps -aqf "name=neo4j-dump"`:/graph.db.dump <target_dump_file>
docker rm --force neo4j-dump
这将创建一个新的容器并转储数据,而不是启动neo4j服务,然后将转储复制到主机, 只需更新并更新到您的