使用 Docker Compose 安装 Neo4j 非常方便。以下是一个示例步骤,展示如何使用 Docker Compose 来安装并运行 Neo4j。
步骤 1:安装 Docker 和 Docker Compose
确保你已经安装了 Docker 和 Docker Compose。如果尚未安装,可以参考以下链接进行安装:
步骤 2:创建 Docker Compose 文件
在你的工作目录中创建一个 docker-compose.yml
文件,并添加以下内容:
yaml
version: '3.8'
services:
neo4j:
image: neo4j:latest
container_name: neo4j
ports:
- "7474:7474" # Neo4j 浏览器 HTTP
- "7687:7687" # Bolt 协议
volumes:
- neo4j_data:/data
- neo4j_logs:/logs
- neo4j_import:/var/lib/neo4j/import
- neo4j_plugins:/plugins
environment:
NEO4J_AUTH: neo4j/password
volumes:
neo4j_data:
neo4j_logs:
neo4j_import:
neo4j_plugins:
配置说明
- image: 使用最新版本的 Neo4j Docker 镜像。
- ports: 将主机的 7474 端口映射到容器的 7474 端口,用于访问 Neo4j 浏览器。将主机的 7687 端口映射到容器的 7687 端口,用于 Bolt 协议。
- volumes: 将数据、日志、导入文件和插件目录挂载到宿主机,以便持久化数据。
- environment: 设置 Neo4j 的初始用户名和密码(此示例中为 neo4j/password)。
步骤 3:启动 Neo4j
在终端中导航到包含 docker-compose.yml
文件的目录,并运行以下命令启动 Neo4j:
bash
docker-compose up -d
这个命令将以后台模式启动 Neo4j 服务。
步骤 4:访问 Neo4j
启动成功后,你可以在浏览器中访问 Neo4j 浏览器界面:
http://localhost:7474
使用在 docker-compose.yml
文件中设置的初始用户名和密码(neo4j/password
)进行登录。
管理和使用 Neo4j
你可以使用 Neo4j 浏览器界面来管理和查询数据库。在浏览器中,你可以编写 Cypher 查询来创建节点和关系,或者执行其他管理任务。
示例 Cypher 查询
以下是一些示例 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 容器,可以使用以下命令:
bash
docker-compose down
这个命令将停止并移除 Neo4j 容器,但保留数据卷,以便下次启动时可以继续使用现有数据。
通过这些步骤,你可以使用 Docker Compose 安装和管理 Neo4j,创建并管理你的知识问题调研系统。