Causal Cluster in different hosts

Reference: https://neo4j.com/docs/operations-manual/current/docker/clustering/

Variation to documented NEO4J sample below gives me output like Waiting for a total of 3 core members...

docker run --name=neo4j-core \
         --network=host \
         --publish=7474:7474 --publish=7687:7687 \
         --publish=5000:5000 --publish=6000:6000 --publish=7000:7000 \
         --env NEO4J_dbms_mode=CORE \
         --env NEO4J_causal__clustering_expected__core__cluster__size=3 \
         --env NEO4J_causal__clustering_initial__discovery__members=ec2_ip_1:5000,ec2_ip_2:5000,ec2_ip_3:5000 \
         --env NEO4J_causal__clustering_discovery__advertised__address=ec2_ip_1:5000 \
         --env NEO4J_causal__clustering_transaction__advertised__address=ec2_ip_1:6000 \
         --env NEO4J_causal__clustering_raft__advertised__address=ec2_ip_1:7000 \
         --env NEO4J_dbms_connectors_default__advertised__address=ec2_ip_1 \
         --env NEO4J_ACCEPT_LICENSE_AGREEMENT=yes \
         --env NEO4J_dbms_connector_bolt_advertised__address=ec2_ip_1:7687 \
         --env NEO4J_dbms_connector_http_advertised__address=ec2_ip_1:7474 \
         neo4j:3.5-enterprise

docker run --name=neo4j-core \
         --network=host \
         --publish=7474:7474 --publish=7687:7687 \
         --publish=5000:5000 --publish=6000:6000 --publish=7000:7000 \
         --env NEO4J_dbms_mode=CORE \
         --env NEO4J_causal__clustering_expected__core__cluster__size=3 \
         --env NEO4J_causal__clustering_initial__discovery__members=ec2_ip_1:5000,ec2_ip_2:5000,ec2_ip_3:5000 \
         --env NEO4J_causal__clustering_discovery__advertised__address=ec2_ip_2:5000 \
         --env NEO4J_causal__clustering_transaction__advertised__address=ec2_ip_2:6000 \
         --env NEO4J_causal__clustering_raft__advertised__address=ec2_ip_2:7000 \
         --env NEO4J_dbms_connectors_default__advertised__address=ec2_ip_2 \
         --env NEO4J_ACCEPT_LICENSE_AGREEMENT=yes \
         --env NEO4J_dbms_connector_bolt_advertised__address=ec2_ip_2:7687 \
         --env NEO4J_dbms_connector_http_advertised__address=ec2_ip_2:7474 \
         neo4j:3.5-enterprise

docker run --name=neo4j-core \
         --network=host \
         --publish=7474:7474 --publish=7687:7687 \
         --publish=5000:5000 --publish=6000:6000 --publish=7000:7000 \
         --env NEO4J_dbms_mode=CORE \
         --env NEO4J_causal__clustering_expected__core__cluster__size=3 \
         --env NEO4J_causal__clustering_initial__discovery__members=ec2_ip_1:5000,ec2_ip_2:5000,ec2_ip_3:5000 \
         --env NEO4J_causal__clustering_discovery__advertised__address=ec2_ip_3:5000 \
         --env NEO4J_causal__clustering_transaction__advertised__address=ec2_ip_3:6000 \
         --env NEO4J_causal__clustering_raft__advertised__address=ec2_ip_3:7000 \
         --env NEO4J_dbms_connectors_default__advertised__address=ec2_ip_3 \
         --env NEO4J_ACCEPT_LICENSE_AGREEMENT=yes \
         --env NEO4J_dbms_connector_bolt_advertised__address=ec2_ip_3:7687 \
         --env NEO4J_dbms_connector_http_advertised__address=ec2_ip_3:7474 \
         neo4j:3.5-enterprise

The way you've adapted this example from the site won't work.

Note that you're running 3 docker containers on the same host. All are conflicting with one another over the same set of published ports;

         --publish=7474:7474 --publish=7687:7687 \
         --publish=5000:5000 --publish=6000:6000 --publish=7000:7000

Further -- your discovery members aren't valid IP addresses for running localhost with docker:

         --env NEO4J_causal__clustering_initial__discovery__members=ec2_ip_1:5000,ec2_ip_2:5000,ec2_ip_3:5000 \

It looks like you took an example that was intended for AWS EC2 and are trying to run it locally with docker. This approach just won't work without substantial customization of hostnames, and separating the three docker machines on your local host into different port sets.

I recommend using GraphAware's quickstart as an easier way. Customize from this: