【问题标题】:Couldn't load the external resource at: file:/var/lib/neo4j/import with Neo4j docker image无法在以下位置加载外部资源:file:/var/lib/neo4j/import with Neo4j docker image
【发布时间】:2018-03-21 15:41:01
【问题描述】:

我正在尝试从 Neo4j 中的 csv 加载节点,但是,每次我尝试这样做时都会收到这样的错误:

Neo.ClientError.Statement.ExternalResourceFailed: Couldn't load the external resource at: file:/var/lib/neo4j/import/events.csv

我的 event.csv 文件位于具有 777 权限的 /var/lib/neo4j/import 目录中。我尝试运行的查询如下所示:

USING PERIODIC COMMIT 500 LOAD CSV WITH HEADERS FROM "file:///events.csv"  AS line
CREATE (e:Event { event_id: toInteger(line.event_id), 
created: line.created,
description: line.description })

我使用最新版本的 docker 镜像设置 Neo4j。文件权限或文件位置可能有什么问题?

【问题讨论】:

  • 您是否将文件绑定挂载到您的容器中?
  • @Yuankun 没有,我没有
  • 那你应该看看我的回答。

标签: csv docker neo4j load-csv


【解决方案1】:

Docker 容器无法访问主机外部的文件,除非您将这些文件挂载到容器中。

解决方案是在调用docker run 命令时将目录绑定挂载到您的容器:

docker run -v /var/lib/neo4j/import:/var/lib/neo4j/import ... <IMAGE> <CMD>

【讨论】:

  • 我试图运行这个:docker run -v /var/lib/neo4j/import:/var/lib/neo4j/import \ --publish=7474:7474 --publish=7687:7687 \ --volume=$HOME/neo4j/data:/data \ --volume=$HOME/neo4j/conf:/conf \ --env=NEO4J_dbms_allow_upgrade='true' \ --env=NEO4J_dbms.security.allow_csv_import_from_file_urls='true' \ neo4j:latest,但我遇到了另一个奇怪的错误:ERROR Neo4j cannot be started because the database files require upgrading and upgrades are disabled in the configuration. Please set 'dbms.allow_upgrade' to 'true' in your configuration file and try again.
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多