-
Notifications
You must be signed in to change notification settings - Fork 40
/
docker-compose-neo4j-4.yml
163 lines (156 loc) · 4.53 KB
/
docker-compose-neo4j-4.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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
x-shared:
&common
NEO4J_AUTH: neo4j/testtest
NEO4J_ACCEPT_LICENSE_AGREEMENT: "yes"
NEO4J_dbms_security_allow__csv__import__from__file__urls: "true"
NEO4J_dbms_security_auth__lock__time: 0s
NEO4JLABS_PLUGINS: '["apoc"]'
x-shared-cluster:
&common-cluster
<<: *common
NEO4J_causal__clustering_initial__discovery__members: core1:5000,core2:5000,core3:5000
NEO4J_dbms_memory_pagecache_size: 100M
NEO4J_dbms_memory_heap_initial__size: 100M
NEO4J_causal__clustering_discovery__listen__address: 0.0.0.0:5000
NEO4J_causal__clustering_transaction__listen__address: 0.0.0.0:6000
NEO4J_causal__clustering_raft__listen__address: 0.0.0.0:7000
x-shared-core:
&common-core
<<: *common-cluster
NEO4J_dbms_mode: CORE
NEO4J_causal__clustering_minimum__core__cluster__size__at__formation: 3
networks:
neo4j:
driver: bridge
services:
client:
build:
context: .
dockerfile: Dockerfile
args:
PHP_VERSION: "${PHP_VERSION-8.1}"
networks:
- neo4j
volumes:
- .:/opt/project
env_file:
- .env
depends_on:
neo4j:
condition: service_healthy
testkit-backend:
build:
context: .
dockerfile: Dockerfile
args:
PHP_VERSION: "${PHP_VERSION-8.1}"
WITH_XDEBUG: true
working_dir: /opt/project
volumes:
- .:/opt/project
command: php /opt/project/testkit-backend/index.php
networks:
- neo4j
depends_on:
- neo4j
ports:
- "9876:9876"
neo4j:
networks:
- neo4j
image: neo4j:4.4-enterprise
healthcheck:
test: "wget -q --method=HEAD http://localhost:7474 || exit 1"
interval: 30s
timeout: 10s
retries: 5
ports:
- "7687:7687"
- "7474:7474"
environment:
<<: *common
volumes:
- ./tests/resources:/import
env_file:
- .env
core1:
image: neo4j:4.4-enterprise
healthcheck:
test: "wget -q --method=HEAD http://localhost:7474 || exit 1"
interval: 30s
timeout: 10s
retries: 5
networks:
- neo4j
volumes:
- ./tests/resources:/import
environment:
<<: *common-core
NEO4J_causal__clustering_discovery__advertised__address: core1:5000
NEO4J_causal__clustering_transaction__advertised__address: core1:6000
NEO4J_causal__clustering_raft__advertised__address: core1:7000
NEO4J_dbms_connector_http_advertised__address: core1:7474
NEO4J_dbms_connector_bolt_advertised__address: core1:7687
env_file:
- .env
core2:
image: neo4j:4.4-enterprise
healthcheck:
test: "wget -q --method=HEAD http://localhost:7474 || exit 1"
interval: 30s
timeout: 10s
retries: 5
networks:
- neo4j
environment:
<<: *common-core
NEO4J_causal__clustering_discovery__advertised__address: core2:5000
NEO4J_causal__clustering_transaction__advertised__address: core2:6000
NEO4J_causal__clustering_raft__advertised__address: core2:7000
NEO4J_dbms_connector_http_advertised__address: core2:7474
NEO4J_dbms_connector_bolt_advertised__address: core2:7687
volumes:
- ./tests/resources:/import
env_file:
- .env
core3:
image: neo4j:4.4-enterprise
healthcheck:
test: "wget -q --method=HEAD http://localhost:7474 || exit 1"
interval: 30s
timeout: 10s
retries: 5
networks:
- neo4j
environment:
<<: *common-core
NEO4J_causal__clustering_discovery__advertised__address: core3:5000
NEO4J_causal__clustering_transaction__advertised__address: core3:6000
NEO4J_causal__clustering_raft__advertised__address: core3:7000
NEO4J_dbms_connector_http_advertised__address: core3:7474
NEO4J_dbms_connector_bolt_advertised__address: core3:7687
volumes:
- ./tests/resources:/import
env_file:
- .env
readreplica1:
image: neo4j:4.4-enterprise
healthcheck:
test: "wget -q --method=HEAD http://localhost:7474 || exit 1"
interval: 30s
timeout: 10s
retries: 5
networks:
- neo4j
environment:
<<: *common-cluster
NEO4J_dbms_mode: READ_REPLICA
NEO4J_causal__clustering_discovery__advertised__address: readreplica1:5000
NEO4J_causal__clustering_transaction__advertised__address: readreplica1:6000
NEO4J_causal__clustering_raft__advertised__address: readreplica1:7000
NEO4J_dbms_connector_http_advertised__address: readreplica1:7474
NEO4J_dbms_connector_bolt_advertised__address: readreplica1:7687
env_file:
- .env
volumes:
- ./tests/resources:/import