Das Problem besteht nun darin, dass die neo4j Community Edition Sie dazu zwingt, die neo4j-Instanz herunterzufahren, um Backups/Datenbankladungen durchzuführen. Die Sicherung erfolgt normalerweise wie folgt:
Code: Select all
docker stop dockerid
docker run --interactive --tty --rm --volume=local_path_to/data:/data --volume=/local_path_to/backup_databases:/backups neo4j/neo4j-admin:latest neo4j-admin dump --database=neo4j --to=/backups/backup_test.dump
docker start dockerid
Das ist ein Problem, weil ich eine Möglichkeit brauche, den neo4j-Docker-Container am Leben zu halten, aber neo4j zu töten, damit ich INNERHALB des Containers auf irgendeine Weise starten kann:
Code: Select all
neo4j stop
neo4j-admin dump --database=neo4j --to=/backups/backup_test.dump
neo4j start
Code: Select all
FROM neo4j:latest
#Ports that will be exposed
EXPOSE 7473 7474 7687
#environment variables
ENV NEO4J_dbms_security_procedures_unrestricted=algo.*,apoc.*,gds.*
ENV NEO4J_AUTH=neo4j/password
COPY ./docker_entrypoint.sh /usr/local/bin/
RUN chown root:root /usr/local/bin/docker_entrypoint.sh && \
chmod 777 /usr/local/bin/docker_entrypoint.sh
ENTRYPOINT [ "/usr/local/bin/docker_entrypoint.sh" ]
CMD ["neo4j"]
Code: Select all
#!/bin/sh
/var/lib/neo4j/bin/neo4j console &
echo "still working"
tail -f /dev/null
Code: Select all
Couldn't connect to localhost:7687 (resolved to ('127.0.0.1:7687',)):
Connection to 127.0.0.1:7687 closed without handshake response
BEARBEITEN: Ich erstelle den Docker-Container mit dem folgenden Befehl:
Code: Select all
docker run \
-p7474:7474 -p7687:7687 \
-d \
-v $HOME/neo4j/data/local_data:/data \
-v $HOME/neo4j/logs:/logs \
-v $HOME/neo4j/import:/var/lib/neo4j/import \
-v $HOME/neo4j/plugins:/plugins \
--env NEO4J_dbms_connector_https_advertised__address="localhost:7473" \
--env NEO4J_dbms_connector_http_advertised__address="localhost:7474" \
--env NEO4J_dbms_connector_bolt_advertised__address="localhost:7687" \
--env NEO4J_dbms_security_procedures_unrestricted=algo.*,apoc.*,gds.* \
--env NEO4J_AUTH=neo4j/$PASSWORD \
my_neo4j_docker_image_id
Mobile version