Docker Connection refused with elasticsearch

Hello,
I got an issue while i try to connect logstash with elasticsearch

and i can't solve it

[2019-06-14T08:49:25,833][WARN ][logstash.outputs.elasticsearch] Attempted to resurrect connection to dead ES instance, but got an error. {:url=>"http://elasticsearch:9200/", :error_type=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :error=>"Elasticsearch Unreachable: [http://elasticsearch:9200/][Manticore::SocketException] Connection refused (Connection refused)"}

docker-compose.yml

version: '2.2'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.1.1
    container_name: elasticsearch
    environment:
      - node.name=elasticsearch
      - discovery.seed_hosts=es02
      - cluster.initial_master_nodes=elasticsearch,es02
      - cluster.name=docker-cluster
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - esdata01:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - esnet
  es02:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.1.1
    container_name: es02
    environment:
      - node.name=es02
      - discovery.seed_hosts=elasticsearch
      - cluster.initial_master_nodes=elasticsearch,es02
      - cluster.name=docker-cluster
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - esdata02:/usr/share/elasticsearch/data
    networks:
      - esnet

  logstash:
    image: logstash:7.1.1
    links:
      - elasticsearch
    volumes:
      - ./:/config-dir
    command: logstash -f /config-dir/logstash.conf
    depends_on:
      - elasticsearch
    networks:
      - esnet

  rabbitmq:
    image: macintoshplus/rabbitmq-management
    ports:
      - "8080:15672"

volumes:
  esdata01:
    driver: local
  esdata02:
    driver: local

networks:
  esnet:

logstash.conf

input {
	rabbitmq {
            host => "rabbitmq"
            heartbeat => 30
            durable => true
            exchange => "logging_queue"
            exchange_type => "headers"
            queue => "logstash"

        }
}

filter {
	if [type] == "nginx-access" {
		grok {
			match => { "message" => "%{COMBINEDAPACHELOG}" }
		}
	}
}

output {
	elasticsearch {
		hosts => ["elasticsearch:9200"]
	}
}