简介
本文通过Docker Compose 安装 Neo4j ,可以方便维护。
Docker 环境安装
首先更具自己使用的操作系统发行版,参考以下文档进行容器运行环境的安装配置。
-
CentOS
-
RockyLinux
-
Ubuntu/Debian
-
龙蜥(Anolis OS)
-
银河麒麟 V10 SP3
Neo4j 安装配置
1.创建目录
# 创建保存neo4j 的存储目录
mkdir -p /path/neo4j/{data,logs,import,plugins}
# 切换目录
cd /path/neo4j
2.创建
docker-compose.yml
文件
version: '3.8'
services:
neo4j:
image: neo4j:latest
container_name: neo4j
ports:
- "7474:7474" # Neo4j 浏览器 HTTP
- "7687:7687" # Bolt 协议
volumes:
- ./data:/data
- ./logs:/logs
- ./import:/var/lib/neo4j/import
- ./plugins:/plugins
environment:
NEO4J_AUTH: neo4j/password
配置说明
image
: 使用最新版本的 Neo4j Docker 镜像。
ports
: 将主机的 7474 端口映射到容器的 7474 端口,用于访问 Neo4j 浏览器。将主机的 7687 端口映射到容器的 7687 端口,用于 Bolt 协议。
volumes
: 将数据、日志、导入文件和插件目录挂载到宿主机,以便持久化数据。
environment
: 设置 Neo4j 的初始用户名和密码(此示例中为 neo4j/password)。
3.启动 Neo4j
在终端或命令行工具中,运行以下命令启动 Neo4j 服务:
docker-compose up -d
4.访问 Neo4j
容器启动完成后,通过浏览器访问如下地址:
http://x.x.x.x:7474
使用
docker-compose.yml
中定义的用户名和密码进行登录。
Neo4j 管理使用
可以通过浏览器来管理和查询 Neo4j 数据库。在浏览器中,可以编写
Cypher
查询来创建节点和关系,或者执行其他管理任务。
示例
Cypher
查询
// 创建问题节点
CREATE (q1:Question {id: 1, text: '你是男方还是女方?', type: 'single'})
CREATE (q2:Question {id: 2, text: '你想咨询以下什么问题?', type: 'multiple'})
CREATE (q3:Question {id: 3, text: '你们现在有几个小孩存在抚养权问题?', type: 'single'})
// 创建选项节点
CREATE (o1:Option {id: 1, text: '男方'})
CREATE (o2:Option {id: 2, text: '女方'})
CREATE (o3:Option {id: 3, text: '抚养权问题'})
CREATE (o4:Option {id: 4, text: '抚养费问题'})
CREATE (o5:Option {id: 5, text: '一个'})
CREATE (o6:Option {id: 6, text: '两个'})
CREATE (o7:Option {id: 7, text: '三个及三个以上'})
// 创建问题与选项之间的关系
CREATE (q1)-[:HAS_OPTION]->(o1)
CREATE (q1)-[:HAS_OPTION]->(o2)
CREATE (q2)-[:HAS_OPTION]->(o3)
CREATE (q2)-[:HAS_OPTION]->(o4)
CREATE (q3)-[:HAS_OPTION]->(o5)
CREATE (q3)-[:HAS_OPTION]->(o6)
CREATE (q3)-[:HAS_OPTION]->(o7)
// 定义选项选择后的下一问题关系
CREATE (o1)-[:LEADS_TO]->(q2)
CREATE (o2)-[:LEADS_TO]->(q2)
CREATE (o3)-[:LEADS_TO]->(q3)
CREATE (o4)-[:LEADS_TO]->(q3)
停止和移除 Neo4j 容器
如果你需要停止 Neo4j 容器,可以使用以下命令:
docker-compose down