使用 Docker 卷持久化数据
Neo4j 挂载点和权限
下表是 Neo4j Docker 镜像识别的挂载点和文件权限的完整参考。
所有列出的挂载点都是**可选的**。Neo4j 可以完全不挂载任何卷就在 Docker 中运行。但是,对于除最基本用例之外的所有用例,将存储挂载到/data
都被认为是必不可少的。
如果容器发生任何问题,在没有 |
挂载点 | 所需权限 | 描述 |
---|---|---|
|
读,写 |
Neo4j 数据库的数据存储。请参阅将存储挂载到 |
|
读,写 |
Neo4j 日志的输出目录。请参阅将存储挂载到 |
|
读[1] |
在启动时将配置文件传递给 Neo4j。 |
|
读[2] |
允许您在容器化的 Neo4j 中安装插件。 |
|
读 |
通过挂载许可证文件夹来提供 Neo4j 和任何插件的许可证。 |
|
读 |
使csv和其他可导入文件可用于neo4j-admin import。 |
|
读 |
为 Neo4j 提供 SSL 证书以进行消息加密。 |
|
写 |
企业版指标文件的输出目录。请参阅指标。 |
1. 使用 2. 使用 |
将存储挂载到/data
Docker 中的 Neo4j 将数据库文件存储在/data
文件夹中。通过将存储挂载到/data
,任何写入 Neo4j 的数据都将在容器停止后持久化。
停止容器,然后重新启动并挂载相同的文件夹到/data
,将启动一个使用相同数据的新容器化 Neo4j 实例。
如果 Neo4j 无法正确关闭,它可能已将数据置于错误状态,并且很可能在启动时失败。这与在容器外部运行 Neo4j 并且未正确关闭的情况相同。 |
/data
挂载点的两种方法/data
docker run -it --rm \
--volume $HOME/neo4j/data:/data \
neo4j:5.25.1
/data
docker volume create neo4jdata (1)
docker run -it --rm \
--volume neo4jdata:/data \ (2)
neo4j:5.25.1
1 | 创建一个名为neo4jdata 的 Docker 卷。 |
2 | 将卷名neo4jdata 挂载到/data 。 |