Comments (4)
You have some nested databases there due to mounting the wrong
directories in docker (which then created new database subdirectories
when it concluded the directories did not contain existing databases).
If you want to mount epe.graphdb
, you need to place it in a
directory structure which maps to what neo4j expects.
NOTE: The directory structure changed in Neo4j 3.0 and that is
what I am describing here and assuming that you are using.
Easy and safe way
Currently you have:
/User/testuser/Documents/Neo4j/epe.graphdb
The easiest way to mount that in docker is to do:
mkdir -p /User/testuser/Documents/Neo4j/databases
mv /User/testuser/Documents/Neo4j/epe.graphdb /User/testuser/Documents/Neo4j/databases/graph.db
And then you'd specify this in your compose file:
volumes:
- /User/testuser/Documents/Neo4j:/data
Note that I renamed the database to avoid having to specify a full
configuration file.
Advanced and dangerous way
There is nothing magic going on here, so you can in fact mount your
desired database directly as graph.db
inside the docker
container. We don't really want you to do this because it might change
at any time, but it might help you better understand how the mounting
works.
Your compose file just needs to specify:
volumes:
- /User/testuser/Documents/Neo4j/epe.graphdb:/data/databases/graph.db
This mounts your local database named epe.graphdb
as database
graphdb
inside the container. You can do the same for hp.graphdb
.
from docker-neo4j.
Fantastic!! That worked like a charm, I'm very grateful for your help π If we ever cross paths, coffees/beers are on me!
from docker-neo4j.
It looks like you a trying to pass the wrong directory to the container. You want to pass the raw data
directory and not the graph.db
directory.
To illustrate, this is the default structure of the /data
directory:
/data
βββ databases
βββ graph.db
βββ index
βββ neostore
βββ neostore.counts.db.a
βββ neostore.id
βββ neostore.labeltokenstore.db
βββ neostore.labeltokenstore.db.id
βββ neostore.labeltokenstore.db.names
βββ neostore.labeltokenstore.db.names.id
βββ neostore.nodestore.db
βββ neostore.nodestore.db.id
βββ neostore.nodestore.db.labels
βββ neostore.nodestore.db.labels.id
βββ neostore.propertystore.db
βββ neostore.propertystore.db.arrays
βββ neostore.propertystore.db.arrays.id
βββ neostore.propertystore.db.id
βββ neostore.propertystore.db.index
βββ neostore.propertystore.db.index.id
βββ neostore.propertystore.db.index.keys
βββ neostore.propertystore.db.index.keys.id
βββ neostore.propertystore.db.strings
βββ neostore.propertystore.db.strings.id
βββ neostore.relationshipgroupstore.db
βββ neostore.relationshipgroupstore.db.id
βββ neostore.relationshipstore.db
βββ neostore.relationshipstore.db.id
βββ neostore.relationshiptypestore.db
βββ neostore.relationshiptypestore.db.id
βββ neostore.relationshiptypestore.db.names
βββ neostore.relationshiptypestore.db.names.id
βββ neostore.schemastore.db
βββ neostore.schemastore.db.id
βββ neostore.transaction.db.0
βββ schema
βΒ Β βββ label
βΒ Β βββ lucene
βΒ Β βββ labelStore
βΒ Β βββ 1
βΒ Β βΒ Β βββ write.lock
βΒ Β βββ failure-message
βββ store_lock
So whatever you mount as the /data
directory must have a databases
sub directory. By default, the /data/databases
directory contains a database named graph.db
. It could be called anything (your seem to be called epe.graphdb
?), in which case one must edit the configuration option dbms.active_database to match the desired name. And to do that in docker, you must mount a /conf
volume with a configuration file. (just call it graph.db
to make it easy for yourself)
from docker-neo4j.
Thanks for the quick and detailed reply!
So I have two neo4j data sets on my machine, default.graphdb
and epe.graphdb
thus the funny names.
This is the top level directory structure of the one I'm trying to include in the neo4j container (epe.graphdb):
epe.graphdb
βββ certificates/
βββ data/
βββ databases/
βββ dbms/
βββ index/
βββ logs/
βββ neostore
βββ neostore.counts.db.a
βββ neostore.counts.db.b
βββ neostore.id
βββ neostore.labeltokenstore.db
βββ neostore.labeltokenstore.db.id
βββ neostore.labeltokenstore.db.names
βββ neostore.labeltokenstore.db.names.id
βββ neostore.nodestore.db
βββ neostore.nodestore.db.id
βββ neostore.nodestore.db.labels
βββ neostore.nodestore.db.labels.id
βββ neostore.propertystore.db
βββ neostore.propertystore.db.arrays
βββ neostore.propertystore.db.arrays.id
βββ neostore.propertystore.db.id
βββ neostore.propertystore.db.index
βββ neostore.propertystore.db.index.id
βββ neostore.propertystore.db.index.keys
βββ neostore.propertystore.db.index.keys.id
βββ neostore.propertystore.db.strings
βββ neostore.propertystore.db.strings.id
βββ neostore.relationshipgroupstore.db
βββ neostore.relationshipgroupstore.db.id
βββ neostore.relationshipstore.db
βββ neostore.relationshipstore.db.id
βββ neostore.relationshiptypestore.db
βββ neostore.relationshiptypestore.db.id
βββ neostore.relationshiptypestore.db.names
βββ neostore.relationshiptypestore.db.names.id
βββ neostore.schemastore.db
βββ neostore.schemastore.db.id
βββ neostore.transaction.db.72
βββ neostore.transaction.db.73
βββ schema
βββ store_lock
When looking at the structure of epe.graphdb, the /data directory seems to be more complicated than the one you described (limited to three levels deep for readability):
epe.graphdb/data/
βββ databases
βΒ Β βββ databases
βΒ Β βΒ Β βββ graph.db
βΒ Β βββ dbms
βΒ Β βΒ Β βββ auth
βΒ Β βββ graph.db
βΒ Β βββ databases
βΒ Β βββ dbms
βΒ Β βββ index
βΒ Β βββ neostore
βΒ Β βββ neostore.counts.db.a
βΒ Β βββ neostore.id
βΒ Β βββ neostore.labeltokenstore.db
βΒ Β βββ neostore.labeltokenstore.db.id
βΒ Β βββ neostore.labeltokenstore.db.names
βΒ Β βββ neostore.labeltokenstore.db.names.id
βΒ Β βββ neostore.nodestore.db
βΒ Β βββ neostore.nodestore.db.id
βΒ Β βββ neostore.nodestore.db.labels
βΒ Β βββ neostore.nodestore.db.labels.id
βΒ Β βββ neostore.propertystore.db
βΒ Β βββ neostore.propertystore.db.arrays
βΒ Β βββ neostore.propertystore.db.arrays.id
βΒ Β βββ neostore.propertystore.db.id
βΒ Β βββ neostore.propertystore.db.index
βΒ Β βββ neostore.propertystore.db.index.id
βΒ Β βββ neostore.propertystore.db.index.keys
βΒ Β βββ neostore.propertystore.db.index.keys.id
βΒ Β βββ neostore.propertystore.db.strings
βΒ Β βββ neostore.propertystore.db.strings.id
βΒ Β βββ neostore.relationshipgroupstore.db
βΒ Β βββ neostore.relationshipgroupstore.db.id
βΒ Β βββ neostore.relationshipstore.db
βΒ Β βββ neostore.relationshipstore.db.id
βΒ Β βββ neostore.relationshiptypestore.db
βΒ Β βββ neostore.relationshiptypestore.db.id
βΒ Β βββ neostore.relationshiptypestore.db.names
βΒ Β βββ neostore.relationshiptypestore.db.names.id
βΒ Β βββ neostore.schemastore.db
βΒ Β βββ neostore.schemastore.db.id
βΒ Β βββ neostore.transaction.db.0
βΒ Β βββ schema
βΒ Β βββ store_lock
βββ dbms
βββ auth
So my question would be, should I be referencing epe.graphdb/data/
or epe.graphdb/data/databases
or something completely different?
Hope that makes sense,
Thanks again!
from docker-neo4j.
Related Issues (20)
- Stopping neo4j to dump database state does not work HOT 2
- neo4j:4.4.16-enterprise Docker image fails when apoc plugin is requested HOT 1
- VSCode can't start a stopped devcontainer HOT 2
- Downloaded Plugin (APOC) File Permission HOT 5
- Missing docker-entrypoint.sh in latest image? HOT 2
- Error using or configuring APOC in GithubAction HOT 1
- Why am I encountering an issue with the GDS library on a Neo4j Docker container on Windows, despite it working on Linux? HOT 5
- Version 4.4.19 fails when installing APOC HOT 3
- Missing proper health check
- chown: changing ownership of '/var/lib/neo4j/conf/neo4j.conf': Read-only file system HOT 3
- Volume inaccessible, although uid and gid match those of the user parameter HOT 2
- my_ip:7474 >> This site canβt be reached HOT 3
- Pods unready/CrashLoopBackOff with message "sed: cannot rename /var/lib/neo4j/conf/sed8pylkX: Operation not permitted" HOT 2
- neo4j-admin:5.10.0 not released on Docker Hub HOT 2
- Unable to mount local config folder with apoc.conf HOT 2
- ERROR: No compatible "graph-data-science" plugin found for Neo4j 5.13.0. HOT 8
- neo4j-admin:5.17.0 not released on Docker Hub HOT 1
- Docker bind only 192.168.58.110 address and not all interfaces HOT 1
- Plugins for "genai","n10s","graphql","graph-algorithms" missing after docker install neo4j:5.18 HOT 3
- Critical/High Severity issues reported by Snyk for neo4j:5.18.1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from docker-neo4j.