从neo4j docker里面的备份创建neo4j数据库

问题描述 投票:5回答:1

Neo4j对我来说很新。我有一个neo4j数据库的备份,我想通过使用该备份创建一个数据库来构建一个docker容器。

我知道我可以使用neo4j-admin restore --from=<backup-directory> [--database=<name>] [--force[=<true|false>]]命令,但我正在寻找一个Docker容器可以用来在创建容器时重新创建数据库的东西。

qazxsw poi的文档使用容器内的现有数据库数据库。但我需要从中恢复备份并创建数据库。

docker neo4j
1个回答
7
投票

EXTENSION_SCRIPT官方图片钩子

Neo4j的官方映像提供了一个钩子,因此您可以在启动时加载数据。为此,您必须在运行时定义名为neo4j docker image的环境变量,该变量指向要运行的数据库恢复脚本(请参阅EXTENSION_SCRIPT)。

下面是使用docker-compose的示例(这也可以使用Dockerfile完成):

docker-compose.yml文件:

https://neo4j.com/developer/docker-23/

然后,在初始化脚本中,必须首次还原数据库一次

neo4j-init.sh文件:

version: '2'
services:
  neo4j:
    image: neo4j:3.2
    ports:
     - "7474:7474"
     - "7687:7687"
    environment:
     - EXTENSION_SCRIPT=/neo4j-data/neo4j-init.sh :
    volumes:
     - ./neo4j-data:/neo4j-data
© www.soinside.com 2019 - 2024. All rights reserved.