77 lines
2.2 KiB
YAML
77 lines
2.2 KiB
YAML
services:
|
|
neo4j:
|
|
image: neo4j:5.7
|
|
environment:
|
|
- NEO4J_AUTH=${NEO4J_AUTH:-neo4j/password}
|
|
- NEO4J_PLUGINS=["apoc"]
|
|
- NEO4J_server_config_strict__validation_enabled=false
|
|
- NEO4J_apoc_export_file_enabled=true
|
|
- NEO4J_apoc_import_file_enabled=true
|
|
- NEO4J_apoc_import_file_use__neo4j__config=true
|
|
- SHARED_PATH=/neo4j_import
|
|
command: >
|
|
bash -c '
|
|
echo "running cmd from docker compose" &&
|
|
#neo4j start &&
|
|
while true; do
|
|
if [ -f /neo4j_import/ready-to-import ]; then
|
|
echo "Starting import process..."
|
|
neo4j stop &&
|
|
bash /neo4j_import/neo4j-admin-import-call.sh &&
|
|
rm /neo4j_import/ready-to-import &&
|
|
touch /neo4j_import/import-complete &&
|
|
chmod 777 /neo4j_import/import-complete
|
|
neo4j start
|
|
echo "The container is running. STR+C will end the bash command and thus, the neo4j container"
|
|
fi
|
|
sleep 10
|
|
done
|
|
'
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://localhost:7474 || exit 1"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
ports:
|
|
- "8080:7474"
|
|
- "8081:7687"
|
|
volumes:
|
|
- neo4j_data:/neo4j_data
|
|
- neo4j_logs:/neo4j_logs
|
|
- neo4j_import:/neo4j_import
|
|
- ${INPUT_DATA_PATH:-./data}:/input_data
|
|
- ./init-scripts:/init-scripts
|
|
- ./importData:/importData
|
|
|
|
|
|
python_app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
args:
|
|
HTTP_PROXY: ${HTTP_PROXY}
|
|
HTTPS_PROXY: ${HTTPS_PROXY}
|
|
NO_PROXY: ${NO_PROXY}
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- NEO4J_URI=bolt://neo4j:7687
|
|
- NEO4J_USER=${NEO4J_USER:-neo4j}
|
|
- NEO4J_PASSWORD=${NEO4J_PASSWORD:-password}
|
|
- INPUT_DATA_PATH=/input_data
|
|
- POETRY_VIRTUALENVS_CREATE=false
|
|
- NEO4J_dbms_directories_import=/neo4j_import
|
|
volumes:
|
|
- neo4j_import:/neo4j_import
|
|
- ${INPUT_DATA_PATH:-./data}:/input_data
|
|
- ./importData:/importData # Share the import data directory
|
|
# depends_on:
|
|
# neo4j:
|
|
# condition: service_healthy
|
|
|
|
# Define named volumes
|
|
volumes:
|
|
neo4j_data:
|
|
neo4j_logs:
|
|
neo4j_import:
|