【发布时间】:2021-03-10 06:18:06
【问题描述】:
我正在尝试编写一个调用 Neo4J 数据库的小型 Python Web 服务。这纯粹是在开发环境中。我想在 Neo4J 容器启动时加载一些 CSV 数据。
我曾尝试使用EXTENSION_SCRIPT 环境设置通过类似脚本来加载数据
#!/bin/bash
load()
{
echo "Loading data"
neo4j-admin import --nodes=/var/lib/neo4j/import/test.csv
}
load
我不断收到以下形式的错误WARNING Import failed. The store files in /data/databases/neo4j are left as they are, although they are likely in an unusable state
我假设加载需要在 neo4j 启动之前发生,因为 db 文件有一些锁定。有人解决了这个问题吗?
我的 Docker-compose 如下:
neo4j:
build: ./graph
restart: unless-stopped
ports:
- 7474:7474
- 7687:7687
volumes:
- ./conf:/conf
- ./data:/data
- ./import:/import
- ./logs:/logs
- ./plugins:/plugins
environment:
# Raise memory limits
- NEO4J_dbms_memory_pagecache_size=1G
- NEO4J_dbms.memory.heap.initial_size=1G
- NEO4J_dbms_memory_heap_max__size=1G
还有我的 Dockerfile:
FROM neo4j:latest
WORKDIR /
COPY load.sh /load.sh
RUN chmod +x /load.sh
ENV EXTENSION_SCRIPT=load.sh
COPY test.csv /var/lib/neo4j/import/test.csv
【问题讨论】:
标签: docker csv import neo4j docker-compose