从neo4j docker内的备份创建neo4j数据库

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

我知道我可以使用neo4j-admin restore --from=<backup-directory> [--database=<name>]

[--force[=<true|false>]]命令,但是我正在寻找docker容器在创建容器时可以用来重新创建数据库的东西。

neo4j

docker映像的文档使用容器内的现有数据库数据库。但是我需要还原备份并从中创建数据库。

回答:

回答:

Neo4j的官方映像提供了一个挂钩,因此您可以在启动时加载数据。为此,您必须定义一个EXTENSION_SCRIPT在运行时命名的环境变量,该变量指向要运行的数据库还原脚本(请参阅https://neo4j.com/developer/docker-23/)。

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

回答:

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

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

回答:

#!/bin/bash

set -euo pipefail

IFS=$'\n\t'

# do not run init script at each container strat but only at the first start

if [ ! -f /tmp/neo4j-import-done.flag ]; then

/var/lib/neo4j/bin/neo4j-admin neo4j-admin restore --from=<backup-directory mount as a docker volume under /neo4j-data> [--database=<name>] [--force[=<true|false>]]

touch /tmp/neo4j-import-done.flag

else

echo "The import has already been made."

fi

以上是 从neo4j docker内的备份创建neo4j数据库 的全部内容, 来源链接: utcz.com/qa/409183.html

回到顶部