-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
78 lines (64 loc) · 2.35 KB
/
docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
services:
neo:
hostname: neo
container_name: neo
image: neo4j:5.19.0-enterprise
restart: always
# ! If you activate the .env ingestion, make sure it doesnt contain NEO4J_* form vars.
# ! They will get injected into the neo4j.conf and fuck you. Just source the .env file before running compose.
# env_file:
# - ./.env
environment:
- NEO4J_AUTH=neo4j/${NEO4J_PASSWORD} # Format is username/password
- NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
- NEO4J_apoc_export_file_enabled=true
- NEO4J_apoc_import_file_enabled=true
- NEO4J_apoc_import_file_use__neo4j__config=true
- NEO4J_PLUGINS=["apoc"]
ports:
- 7473:7473
- 7474:7474
- 7687:7687
volumes:
# sudo chown -R 7474:7474 /opt/ribxz_neo4j_volume && sudo chown -R 755 /opt/ribxz_neo4j_volume
- ${NEO4J_MOUNTPATH}/plugins:/var/lib/neo4j/plugins #<-- don't forget to move apoc.jar to this folder
- ${NEO4J_MOUNTPATH}/data:/var/lib/neo4j/data
- ${NEO4J_MOUNTPATH}/conf:/var/lib/neo4j/conf
- ${NEO4J_MOUNTPATH}/logs:/var/lib/neo4j/logs
# ! In theory this is not necessary since the API's adapter performs ETL now.
# ! If manual imports are necessary -- uncomment this.
# - type: bind
# source: ${RIBETL_DATA:?err}
# target: /import/RIBETL_DATA:Z
# read_only: true
django:
env_file:
- ./.env
build:
context: .
dockerfile: Dockerfile-django
container_name: django
restart: always
ports:
- 8000:8000
volumes:
- type: bind
source: ${RIBETL_DATA:?err}
target: /home/RIBETL_DATA
# !FOR LIVE DEVELOPMENT -----------------------|
# - What this does is it mounts the local version of the ribxz_api folder to the container's /home/ribxz_api
# So instead of just a static mounted version inside the container,
# the changes made to the local ribxz folder will be reflected inside the container
# while it is running.
# - ./ribxz_api:/home/ribxz_api #| <--- DEV ONLY
#! --------------------------------------------|
environment:
- RIBETL_DATA=/home/RIBETL_DATA
- NEO4J_URI=bolt://neo:7687
- NEO4J_USER=neo4j
- NEO4J_PASSWORD=${NEO4J_PASSWORD}
- NEO4J_CURRENTDB=ribxz
links:
- neo
depends_on:
- neo