Neo4j.conf file is missing when creating a cluster

I have created a neo4j cluster using YAML file, when run the file using docker-compose up --detach everything runs fine but the neo4j.conf file is missing.

version: "3"
services:
       
       core1:
            image: neo4j:3.5.11-enterprise
            ports:
                  - "11474:7474"
                  - "11687:7687"
            environment: 
              NEO4J_dbms_mode: CORE
              NEO4J_causal__clustering_minimum__core__cluster__size__at__formation: 3
              NEO4J_causal__clustering_minimum__core__cluster__size__at__runtime: 3
              NEO4J_causal__clustering_initial__discovery__members: core1:5000,core2:5000,core3:5000
              NEO4J_dbms_connector_bolt_advertised__address: localhost:11687
              NEO4J_ACCEPT_LICENSE_AGREEMENT: 'yes'
            volumes:
                   - /home/vinnu/Development/reap-cluster/core1/conf:/conf
                   - /home/vinnu/Development/reap-cluster/core1/data:/data
                   - /home/vinnu/Development/reap-cluster/core1/logs:/logs
              

       core2:
            image: neo4j:3.5.11-enterprise
            ports:
                  - "12474:7474"
                  - "12687:7687"
            environment: 
              NEO4J_dbms_mode: CORE
              NEO4J_causal__clustering_minimum__core__cluster__size__at__formation: 3
              NEO4J_causal__clustering_minimum__core__cluster__size__at__runtime: 3
              NEO4J_causal__clustering_initial__discovery__members: core1:5000,core2:5000,core3:5000
              NEO4J_dbms_connector_bolt_advertised__address: localhost:12687
              NEO4J_ACCEPT_LICENSE_AGREEMENT: 'yes'
            volumes:
                   - /home/vinnu/Development/reap-cluster/core2/conf:/conf
                   - /home/vinnu/Development/reap-cluster/core2/data:/data
                   - /home/vinnu/Development/reap-cluster/core2/logs:/logs
              

       core3:
            image: neo4j:3.5.11-enterprise
            ports:
                  - "13474:7474"
                  - "13687:7687"
            environment: 
              NEO4J_dbms_mode: CORE
              NEO4J_causal__clustering_minimum__core__cluster__size__at__formation: 3
              NEO4J_causal__clustering_minimum__core__cluster__size__at__runtime: 3
              NEO4J_causal__clustering_initial__discovery__members: core1:5000,core2:5000,core3:5000
              NEO4J_dbms_connector_bolt_advertised__address: localhost:13687
              NEO4J_ACCEPT_LICENSE_AGREEMENT: 'yes'
            volumes:
                   - /home/vinnu/Development/reap-cluster/core3/conf:/conf
                   - /home/vinnu/Development/reap-cluster/core3/data:/data
                   - /home/vinnu/Development/reap-cluster/core3/logs:/logs
              
       read_replica_1:
            image: neo4j:3.5.11-enterprise
            ports:
                  - "14474:7474"
                  - "14687:7687"
            environment: 
              NEO4J_dbms_mode: READ_REPLICA
              NEO4J_causal__clustering_initial__discovery__members: core1:5000,core2:5000,core3:5000
              NEO4J_dbms_connector_bolt_advertised__address: localhost:14687
              NEO4J_ACCEPT_LICENSE_AGREEMENT: 'yes'
            volumes:
                   - /home/vinnu/Development/reap-cluster/read_replica_1/conf:/conf
                   - /home/vinnu/Development/reap-cluster/read_replica_1/data:/data
                   - /home/vinnu/Development/reap-cluster/read_replica_1/logs:/logs

This line right here says that you will provide the conf file by writing one and placing it in your local reap-cluster/core1/conf directory. Since that directory appears to be empty, neo4j probably can't start because you haven't configured it. :slight_smile:

The solution is to either write your own config file and place it in that directory, or else don't mount the /conf volume in the docker container and let Neo4j generate its own default config.

1 Like

Thanks, helpful :slightly_smiling_face::blush: