我可以在Docker上设置Neo4j在第一次运行时导入CSV文件,而不是之后呢?
有没有办法设置docker使neo4j导入特定的CSV文件只导入一次?
或者我应该这样做的JavaScript来检查如果neo4j是空的,然后加载?
当然,使用JavaScript很容易。 只是想知道我可以做docker吗?
neo4j导入工具( http://neo4j.com/docs/operations-manual/current/tutorial/import-tool/ )独立于neo4j运行。
构build图像时加载数据
您可以从neo4j基础镜像inheritance,并使用RUN /path/to/neo4j-import ...
在创build镜像时加载数据。
这当然会只加载一次数据。
运行容器时加载数据
要在运行容器时加载数据,必须覆盖执行的脚本以运行启动neo4j。 请参阅docker_entrypoint.sh
https://github.com/neo4j/docker-neo4j/tree/master/src/3.1
导入工具只在数据库不存在的情况下才起作用。 当它尝试将数据加载到现有的数据库以使其只运行一次时,您可能会发现错误。