插件

本页面介绍了如何在 Docker 容器中运行的 Neo4j 实例中安装插件。有关插件的通用说明,请参阅配置 → 插件

安装插件

要安装插件,包括用户定义过程,请将包含插件 JAR 文件的文件夹或卷挂载到 /plugins,例如

docker run \
   --publish=7474:7474 --publish=7687:7687 \
   --volume=$HOME/neo4j/plugins:/plugins \
   neo4j:2025.05.0

Neo4j 在启动时会自动加载在 /plugins 文件夹中找到的任何插件。

NEO4J_PLUGINS 工具

Neo4j Docker 镜像包含一个启动脚本,可以在运行时自动下载和配置某些 Neo4j 插件。

此功能旨在方便在开发环境中使用 Neo4j 插件,但不建议用于生产环境。

要在生产环境中使用 Neo4j Docker 容器中的插件,请参阅安装用户定义过程

可以使用 NEO4J_PLUGINS 环境变量来指定通过此方法安装的插件。这应该设置为支持的插件的 JSON 格式列表。

在 Docker 容器中运行 Bloom 需要 Neo4j Docker 镜像 4.2.3-enterprise 或更高版本。

如果传入了无效的 NEO4J_PLUGINS 值,Neo4j 将返回插件未知的通知。例如,--env NEO4J_PLUGINS='["gds"]' 返回以下通知:

示例输出
"gds" is not a known Neo4j plugin. Options are:
apoc
apoc-extended
bloom
genai
graph-data-science
n10s
示例 1. 安装 APOC Core 插件 (apoc)

您可以使用 Docker 参数 --env NEO4J_PLUGINS='["apoc"]' 并运行以下命令:

docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
  --env NEO4J_PLUGINS='["apoc"]' \
  neo4j:2025.05.0
示例 2. 安装 APOC Core 插件 (apoc) 和图数据科学插件 (graph-data-science)

您可以使用 Docker 参数 --env NEO4J_PLUGINS='["apoc", "graph-data-science"]' 并运行以下命令:

docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
  --env NEO4J_PLUGINS='["apoc", "graph-data-science"]' \
  neo4j:2025.05.0

存储已下载的插件

在带宽有限或 Neo4j 频繁停止和启动的情况下,最好只下载一次插件并重复使用,而不是每次都下载。

结合使用 NEO4J_PLUGINS 工具和将存储挂载到 /plugins,插件 JAR 文件会下载到 /plugins 文件夹中。之后可以再次使用此文件夹为 Neo4j 提供相同的插件,而无需设置 NEO4J_PLUGINS

示例 3. 使用 Docker 自动下载和重用插件的示例。
获取 APOC 插件并将其保存到 $HOME/neo4j/plugins
docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
  --env NEO4J_PLUGINS='["apoc"]' \
   --volume=$HOME/neo4j/plugins:/plugins \ (1)
  neo4j:2025.05.0
1 将主机文件夹 $HOME/neo4j/plugins 挂载到 /plugins
验证 apoc 插件已下载。
docker kill <containerID/name>
ls $HOME/neo4j/plugins
  apoc.jar
启动新容器并验证 apoc 已安装。
docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
   --volume=$HOME/neo4j/plugins:/plugins \
  neo4j:2025.05.0

cypher-shell "RETURN apoc.version();"

安装插件许可证

如果插件需要许可证,可以通过将包含许可证文件的文件夹或卷挂载到 /licenses 来提供给容器。

要检查插件是否需要许可证,请参阅通用插件文档

示例 4. 通过将文件夹挂载到容器来安装插件和许可证
docker run \
   --publish=7474:7474 --publish=7687:7687 \
   --volume=$HOME/neo4j/plugins:/plugins \   (1)
   --volume=$HOME/neo4j/licenses:/licenses \ (2)
   neo4j:2025.05.0
1 包含插件 JAR 文件的文件夹。
2 包含许可证文件的文件夹。

如果使用 NEO4J_PLUGINS 工具安装插件,也必须提供许可证。

示例 5. 使用 NEO4J_PLUGINS 工具通过将文件夹挂载到容器来安装插件和许可证
docker run \
   --publish=7474:7474 --publish=7687:7687 \
   --env NEO4J_PLUGINS='["bloom"]' \
   --volume=$HOME/neo4j/licenses:/licenses \ (1)
   neo4j:2025.05.0
1 包含许可证文件的文件夹。
© . All rights reserved.