Hello everyone,
I have many problems with running simple cluster. I need to solve simple problem. I have docker-compose file:
version: '3'
networks:
lan:
services:
core1:
image: neo4j:4.1-enterprise
networks:
- lan
ports:
- 7474:7474
- 6477:6477
- 7687:7687
volumes:
- $HOME/neo4j/neo4j-core401/data:/data
- $HOME/neo4j/neo4j-core401/logs:/logs
environment:
- NEO4J_AUTH=neo4j/changeme
- NEO4J_dbms_mode=CORE
- NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
- NEO4J_causal__clustering_initial__discovery__members=core1:5000,core2:5000,core3:5000
- NEO4J_causal__clustering_minimum__core__cluster__size__at__formation=3
- NEO4J_dbms_connector_http_listen__address=:7474
- NEO4J_dbms_connector_https_listen__address=:6477
- NEO4J_dbms_connector_bolt_listen__address=:7687
- 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_memory_heap_initial__size=1024m
- NEO4J_dbms_memory_heap_max__size=1024m
- NEO4J_dbms_memory_pagecache_size=1g
- NEO4J_dbms_directories_import=import
- NEO4J_dbms_logs_query_threshold=0s
# - NEO4JLABS_PLUGINS=["apoc"]
core2:
image: neo4j:4.1-enterprise
networks:
- lan
ports:
- 127.0.0.1:7475:7475
- 127.0.0.1:6478:6478
- 127.0.0.1:7688:7688
volumes:
- $HOME/neo4j/neo4j-core402/data:/data
- $HOME/neo4j/neo4j-core402/logs:/logs
environment:
- NEO4J_AUTH=neo4j/changeme
- NEO4J_dbms_mode=CORE
- NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
- NEO4J_causal__clustering_minimum__core__cluster__size__at__formation=3
- NEO4J_causal__clustering_initial__discovery__members=core1:5000,core2:5000,core3:5000
- 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_listen__address=:7475
- NEO4J_dbms_connector_https_listen__address=:6478
- NEO4J_dbms_connector_bolt_listen__address=:7688
- NEO4J_dbms_memory_heap_initial__size=1024m
- NEO4J_dbms_memory_heap_max__size=1024m
- NEO4J_dbms_memory_pagecache_size=1g
- NEO4J_dbms_directories_import=import
- NEO4J_dbms_logs_query_threshold=0s
# - NEO4JLABS_PLUGINS=["apoc"]
core3:
image: neo4j:4.1-enterprise
networks:
- lan
ports:
- 7476:7476
- 6479:6479
- 7689:7689
volumes:
- $HOME/neo4j/neo4j-core403/data:/data
- $HOME/neo4j/neo4j-core403/logs:/logs
environment:
- NEO4J_AUTH=neo4j/changeme
- NEO4J_dbms_mode=CORE
- NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
- NEO4J_causal__clustering_minimum__core__cluster__size__at__formation=3
- NEO4J_causal__clustering_initial__discovery__members=core1:5000,core2:5000,core3:5000
- 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_listen__address=:7476
- NEO4J_dbms_connector_https_listen__address=:6479
- NEO4J_dbms_connector_bolt_listen__address=:7689
- NEO4J_dbms_memory_heap_initial__size=1024m
- NEO4J_dbms_memory_heap_max__size=1024m
- NEO4J_dbms_memory_pagecache_size=1g
- NEO4J_dbms_directories_import=import
- NEO4J_dbms_logs_query_threshold=0s
# - NEO4JLABS_PLUGINS=["apoc"]
read1:
image: neo4j:4.1-enterprise
networks:
- lan
ports:
- 127.0.0.1:7479:7479
- 127.0.0.1:9479:9479
- 127.0.0.1:9689:9689
volumes:
- $HOME/neo4j/neo4j-read1/data:/data
- $HOME/neo4j/neo4j-read1/logs:/logs
environment:
- NEO4J_AUTH=neo4j/changeme
- NEO4J_dbms_mode=READ_REPLICA
- NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
- NEO4J_causal__clustering_minimum__core__cluster__size__at__formation=3
- NEO4J_causal__clustering_initial__discovery__members=core1:5000,core2:5000,core3:5000
- NEO4J_dbms_connector_http_listen__address=:7479
- NEO4J_dbms_connector_https_listen__address=:9479
- NEO4J_dbms_connector_bolt_listen__address=:9689
# - NEO4JLABS_PLUGINS=["apoc"]
I took this example from GitHub's gist. The fist time was worked, but the others times ware failure: No write operations are allowed directly on this database. Writes must pass through the leader. The role of this server is: FOLLOWER
Best regards,
Neo4j newcomers