我正在尝试使用Gephi(https://gephi.org/)的图形流插件和Neo4j(通过docker)连接Neo4j,使用Neo4j的APOC过程,如此处所述:https://tbgraph.wordpress.com/2017/04/01/neo4j-to-gephi/。我已经在Gephi中安装了所需的插件,在neo4j中添加了apoc过程,并添加了所需的安全配置,以使apoc过程正常工作。因此,
我也尝试用
编辑:
关于 Docker,我正在使用自定义镜像,在基本的 neo4j 镜像上添加了 apoc。
neo4j.conf
包含以下行:dbms.security.procedures.unrestricted=apoc.\*
。
然而,当我在控制台中输入以下查询时:
MATCH path = (:Person)-[:KNOWS]->(:Person)
CALL apoc.gephi.add(null,'workspace1',path,'weight') yield nodes
return *
I get
Neo.ClientError.Procedure.ProcedureCallFailed: Failed to invoke procedure `apoc.gephi.add`: Caused by: java.net.ConnectException: Connection refused (Connection refused)
我也尝试用
https://localhost:8443
和 http://localhost:8080
替换第一个空值 (即服务器 URL),但我仍得到相同的异常。Gephi Graph Streaming 插件服务器同时在 8080 和 8443 上监听。我不知道如何进一步排除问题。编辑:
关于 Docker,我正在使用自定义镜像,在基本的 neo4j 镜像上添加了 apoc。
# Adding APOC
FROM neo4j:3.3
ENV APOC_URI https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/3.3.0.1/apoc-3.3.0.1-all.jar
RUN apk add --no-cache --quiet curl
RUN mv plugins /plugins \
&& ln -s plugins /plugins
RUN curl --fail --silent --show-error --location --output apoc-3.3.0.1-all.jar $APOC_URI \
&& mv apoc-3.3.0.1-all.jar /plugins
RUN apk del curl
EXPOSE 7474 7473 7687
CMD ["neo4j"]
我将容器以以下方式运行:
docker run \
--publish=7474:7474 --publish=7687:7687 \
--volume=$HOME/neo4j/data:/data \
-e NEO4J_dbms_security_procedures_unrestricted=apoc.\\\* \
neo4j_apoc:3.3