Docker 容器内运行的 Neo4j 实例 安装apoc插件

插件

本页描述了如何将插件安装到在 Docker 容器内运行的 Neo4j 实例中。有关插件的一般说明,请参见配置 → 插件。

安装插件

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

highlight 复制代码
docker run \
   --publish=7474:7474 --publish=7687:7687 \
   --volume=$HOME/neo4j/plugins:/plugins \
   neo4j:5.20.0

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

NEO4J_PLUGINS 实用程序

Neo4j Docker 映像包括一个启动脚本,可以在运行时自动下载和配置特定的 Neo4j 插件。

|-------------------------------------------------------------------------------------|
| 此功能旨在简化在开发环境中使用 Neo4j 插件的过程,但不建议在生产环境中使用。 要在生产中使用 Neo4j Docker 容器中的插件,请参阅安装用户定义的过程。 |

NEO4J_PLUGINS 环境变量可用于指定使用此方法安装的插件。应将其设置为支持插件的 JSON 格式列表。

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

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

highlight 复制代码
"gds" is not a known Neo4j plugin. Options are:
apoc
apoc-extended
bloom
graph-data-science
graphql
n10s

示例 1. 安装 APOC 核心插件 ( apoc )
您可以使用 Docker 参数 --env NEO4J_PLUGINS='["apoc"]' 并运行以下命令:

highlight 复制代码
docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
  --env NEO4J_PLUGINS='["apoc"]' \
  neo4j:5.20.0

示例 2. 安装 APOC 核心插件 ( apoc ) 和图形数据科学插件 ( graph-data-science )
您可以使用 Docker 参数 --env NEO4J_PLUGINS='["apoc", "graph-data-science"]' 并运行以下命令:

highlight 复制代码
docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
  --env NEO4J_PLUGINS='["apoc", "graph-data-science"]' \
  neo4j:5.20.0

存储下载的插件

在带宽受限的情况下,或者 Neo4j 经常停止和启动的情况下,可能希望只下载插件一次并重复使用,而不是每次都下载插件。
通过使用 NEO4J_PLUGINS 实用程序与对 /plugins 进行存储挂载的结合,插件 jar 文件将被下载到 /plugins 文件夹中。然后可以在以后再次使用它,以向 Neo4j 提供相同的插件,而无需设置 NEO4J_PLUGINS
示例 3。使用 Docker 自动下载和重复使用插件的示例。
获取 APOC 插件并将其保存到 $HOME/neo4j/plugins

highlight 复制代码
docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
  --env NEO4J_PLUGINS='["apoc"]' \
   --volume=$HOME/neo4j/plugins:/plugins \
  neo4j:5.20.0

|---|----------------------------------------------|
| | 挂载主机文件夹 $HOME/neo4j/plugins/plugins 。 |

验证 apoc 插件已下载。

highlight 复制代码
docker kill <containerID/name>
ls $HOME/neo4j/plugins
  apoc.jar

开始一个新容器并验证 apoc 是否已安装。

highlight 复制代码
docker run -it --rm \
  --publish=7474:7474 --publish=7687:7687 \
  --env NEO4J_AUTH=none \
   --volume=$HOME/neo4j/plugins:/plugins \
  neo4j:5.20.0

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

安装插件许可证

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

|-------------------------|
| 要检查插件是否需要许可证,请参考通用插件文档。 |

示例 4. 通过挂载文件夹到容器来安装插件和许可证

highlight 复制代码
docker run \
   --publish=7474:7474 --publish=7687:7687 \
   --volume=$HOME/neo4j/plugins:/plugins \
   --volume=$HOME/neo4j/licenses:/licenses \
   neo4j:5.20.0

|---|------------------|
| | 包含插件 jar 文件的文件夹。 |
| | 包含许可文件的文件夹。 |

必须提供许可证,如果使用 NEO4J_PLUGINS 实用程序来安装插件。
示例 5。使用 NEO4J_PLUGINS 工具将文件夹挂载到容器以安装插件和许可证

highlight 复制代码
docker run \
   --publish=7474:7474 --publish=7687:7687 \
   --env NEO4J_PLUGINS='["bloom"]' \
   --volume=$HOME/neo4j/licenses:/licenses \
   neo4j:5.20.0

|---|--------------|
| | 包含许可证文件的文件夹。 |

相关推荐
羑悻的小杀马特18 分钟前
Dockerfile 全景指南:从入门编写dockerfile到生产环境镜像优化实战,一步步带你从啃透制作指令到镜像制作落地!
docker·dockerfile·镜像制作
BianHuanShiZhe27 分钟前
docker常见命令
docker
正经教主2 小时前
【FDE系列】阶段2:Day 43:Docker Compose — 多容器一键编排
人工智能·docker·fde
忆~遂愿3 小时前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器
不吃香菜kkk、4 小时前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
Zhu7584 小时前
docker环境,vLLM 部署 Qwen3.8-27B
docker·qwen·vllm
溜达的大象4 小时前
多台服务器不想上重型监控?用 Beszel 搭一套轻量主机与 Docker 看板
docker
正经教主5 小时前
【FDE系列】阶段2:Day 47:对接企业系统 — 飞书 / 钉钉 API
人工智能·docker·fde
九皇叔叔16 小时前
Kubernetes 资源管理方式详解:命令式与声明式管理
docker·容器·k8s
程序猿小郑1 天前
Docker Compose 构建完整服务实战指南:从入门到最佳实践
docker·容器