I have a docker-compose.yml file that consists of elasticsearch & kibana. I am wanting to add the APM Server service in the docker-compose.yml file. Is there a way to configure the apm server to the .yml file? I was reading up on configuring apm server on docker but this is not what I am looking for since I am doing this with docker-compose.
My docker-compose file:
version: '3.8'
services:
elasticsearch:
container_name: elasticsearch
image: docker.elastic.co/elasticsearch/elasticsearch:7.13.0
ports:
- 9200:9200
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
environment:
- xpack.monitoring.enabled=true
- xpack.watcher.enabled=false
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.type=single-node
networks:
- elastic
kibana:
container_name: kibana
image: docker.elastic.co/kibana/kibana:7.13.0
ports:
- 5601:5601
depends_on:
- elasticsearch
environment:
- ELASTICSEARCH_URL=http://localhost:9200
- xpack.apm.enabled=false
networks:
- elastic
networks:
elastic:
driver: bridge
volumes:
elasticsearch-data:
Updated docker-compose.yml:
Would this be correct?
version: '3.8'
services:
apm-server:
container_name: apm-server
image: docker.elastic.co/apm/apm-server:7.13.0
ports:
- 8200:8200
depends_on:
- elasticsearch
- kibana
networks:
- elastic
command: >
apm-server -e
-E apm-server.rum.enabled=true
-E setup.kibana.host=kibana:5601
-E setup.template.settings.index.number_of_replicas=0
-E apm-server.kibana.enabled=true
-E apm-server.kibana.host=kibana:5601
-E output.elasticsearch.hosts=["elasticsearch:9200"]
elasticsearch:
container_name: elasticsearch
image: docker.elastic.co/elasticsearch/elasticsearch:7.13.0
ports:
- 9200:9200
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
environment:
- xpack.monitoring.enabled=true
- xpack.watcher.enabled=false
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.type=single-node
networks:
- elastic
kibana:
container_name: kibana
image: docker.elastic.co/kibana/kibana:7.13.0
ports:
- 5601:5601
depends_on:
- elasticsearch
environment:
- ELASTICSEARCH_URL=http://localhost:9200
- xpack.apm.enabled=false
networks:
- elastic
networks:
elastic:
driver: bridge
volumes:
elasticsearch-data: