当前位置: 首页 > news >正文

Docker轻松搭建Neo4j+APOC环境

Docker轻松搭建Neo4j+APOC环境

  • 一、简介
  • 二、Docker部署neo4j
  • 三、Docker安装APOC插件
  • 四、删除数据库/切换数据库

一、简介

Neo4j 是一款高性能的 原生图数据库,采用 属性图模型 存储数据,支持 Cypher查询语言,适用于复杂关系数据的存储和分析。其核心优势包括:

  • 灵活的数据模型:以 节点(Node)、关系(Relationship)和属性(Property) 组织数据
  • 高效的关联查询:擅长处理深度遍历、路径查找等复杂关系查询
  • ACID事务支持:确保数据一致性
  • 可扩展性:支持大规模图数据处理
    APOC(Awesome Procedures On Cypher) 是 Neo4j 的 官方扩展插件,提供了 300+ 存储过程和函数,极大增强 Neo4j 的功能,包括:
  • 数据导入/导出(JSON、CSV、XML、JDBC等)
  • 图算法(最短路径、PageRank、社区发现等)
  • 数据转换(集合、字符串、时间处理)
  • 图重构(子图提取、虚拟图、模式匹配)
  • 运维工具(数据库监控、备份恢复)
    Docker部署Neo4j官方文档:https://neo4j.com/docs/operations-manual/current/docker/introduction/

二、Docker部署neo4j

1.cmd打开命令行,运行:docker pull neo4j。docker环境搭建参考文章:Docker 环境搭建与三大数据库(MySQL/Redis/MongoDB)部署教程
在这里插入图片描述
2.在本地创建映射文件夹neo4j>data、neo4j>conf、neo4j>logs
在这里插入图片描述
3.临时启动neo4j容器:docker run -d --name neo4j --publish=7474:7474 --publish=7687:7687 --env NEO4J_AUTH=neo4j/12345678 neo4j
在这里插入图片描述
4.在docker客户端找到/var/lib/neo4j/conf目录,把该目录中的文件复制到neo4j>conf;不复制也可以,只是挂载conf目录后,原本的四个文件会只留一个neo4j.conf文件
在这里插入图片描述
5.运行docker stop neo4j && docker rm neo4j删除原本的临时容器,使用下面命令重启容器

/*****
--publish:主机端口:容器端口,7474为浏览器端端口,7687为Bolt协议默认端口
-d:启动的镜像名称。
--name:设置容器名称。
--restart=always:设置docker启动时,容器跟随自启。
--env NEO4J_AUTH=neo4j/12345678:设置密码,密码长度不能小于8位
--volume=/f/Docker/home/neo4j/conf:/var/lib/neo4j/conf:挂载容器配置文件到宿主,方便修改配置文件,,如果是linux系统宿主机不需要加盘符,直接使用/就代表宿主机的根目录
--volume=/f/Docker/home/neo4j/data:/data:挂载容器存储文件到宿主,避免因不小心卸载容器或者容器损坏导致数据丢失不可找回风险,,如果是linux系统宿主机不需要加盘符,直接使用/就代表宿主机的根目录
--volume=/f/Docker/home/neo4j/logs:/logs:挂载日志文件,,如果是linux系统宿主机不需要加盘符,直接使用/就代表宿主机的根目录
*****/docker run -d --name neo4j --restart=always --publish=7474:7474 --publish=7687:7687 --env NEO4J_AUTH=neo4j/12345678 --volume=/f/Docker/home/neo4j/data:/data --volume=/f/Docker/home/neo4j/conf:/var/lib/neo4j/conf --volume=/f/Docker/home/neo4j/logs:/logs neo4j

6.宿主机访问:http://localhost:7474/,页面正常打开说明neo4j部署成功
在这里插入图片描述
7.验证数据文件是否挂载成功:打开neo4j>data如图所示,说明数据文件挂载成功
在这里插入图片描述
8.验证日志文件是否挂载成功:打开neo4j>conf如图所示,说明日志文件挂载成功、neo4j>logs
在这里插入图片描述
9.验证配置文件是否挂载成功:打开neo4j>logs,如果该目录下的文件还存在,说明配置文件挂载成功
在这里插入图片描述

三、Docker安装APOC插件

1.运行docker exec -it neo4j neo4j --version,查看neo4j的版本,第一个neo4j是容器名,第二个neo4j是neo4j命令
在这里插入图片描述
2.访问链接:https://neo4j.com/docs/apoc/current/installation/,下载对应版本的APOC包,在neo4j目录新建plugins文件夹,把apoc包放进该文件夹
在这里插入图片描述
3.将文件由宿主机移动至容器:docker cp F:/Docker/home/neo4j/plugins/apoc-2025.04.0-core.jar neo4j:/var/lib/neo4j/plugins
在这里插入图片描述
4.重新启动容器:docker restart neo4j。也可在创建容器时挂载plugins目录
在这里插入图片描述
5.测试apoc插件是否安装成功,浏览器访问:http://localhost:7474/,输入账号密码登录,运行:call apoc.help(“apoc”)
在这里插入图片描述

四、删除数据库/切换数据库

在免费版 Neo4j 中,单次仅支持运行一个数据库,且默认数据库名必须为 neo4j。如需删除数据库,只需以下步骤:
1.停止容器:docker stop <容器名>
2.修改挂载目录:进入挂载的 data 目录,将默认数据库文件夹 neo4j 重命名(如 neo4j_old)
3.重启容器:docker start <容器名>
由于 Neo4j 启动时检测不到默认数据库,会自动新建一个空的 neo4j 数据库,原数据即被"删除"。此方法无需复杂操作,适合快速清理数据。

http://www.lqws.cn/news/119107.html

相关文章:

  • IOS 打包账号发布上传和IOS Xcode证书配置
  • 华为云Flexus+DeepSeek征文|基于华为云MaaS平台的DeepSeek大模型与云服务单机+CCE高可用部署实践
  • 使用 React Native 开发鸿蒙运动健康类应用的​​高频易错点总结​​
  • 【uniapp开发】picker组件的使用
  • OSCP靶机练习PG hokkaido
  • HTML基础学习
  • 豆包突然没法用了,一打开就提示网络连接错误
  • Python Flask中启用AWS Secrets Manager+AWS Parameter Store配置中心
  • Spring Boot微服务架构(十):Docker与K8S部署的区别
  • LVS、NGINX、HAPROXY的调度算法
  • LeetCode 3226.使两个整数相等的位更改次数
  • 可编辑精品PPT | 大型企业数字化转型顶层业务架构模型解决方案数字化架构图合集可编辑架构图系统架构图技术架构图
  • vimadbgit命令
  • 前端八股之JS的原型链
  • Linux开发工具(apt,vim,gcc)
  • 二叉数-965.单值二叉数-力扣(LeetCode)
  • Open SSL 3.0相关知识以及源码流程分析
  • 内存管理【Linux操作系统】
  • ArcGIS Pro 3.4 二次开发 - 共享
  • docker镜像下载到本地,并导入服务器
  • ES海量数据更新及导入导出备份
  • 高防服务器价格高原因分析
  • git引用概念(git reference,git ref)(简化对复杂SHA-1哈希值的管理)(分支引用、标签引用、HEAD引用、远程引用、特殊引用)
  • mysql知识点
  • 【C++】AVL树的概念及实现(万字图文超详解)
  • 电商、交通、医疗三大应用典型分析
  • 【开源工具】 黑客帝国系列系统监控工具:基于PyQt5的全方位资源监控系统
  • go的工具库:github.com/expr-lang/expr
  • Python爬虫:trafilatura 的详细使用(高效的网页正文提取工具)
  • Vue3+Vite中lodash-es安装与使用指南