version: "3.4" services: grafana: image: grafana/grafana container_name: ping-grafana restart: always ports: - 3020:3000 networks: - pinger-net volumes: - type: bind source: ./grafana-data target: /var/lib/grafana - type: bind source: ./prometheus-datasource.yml target: /etc/grafana/provisioning/datasources/prometheus.yml prometheus: image: prom/prometheus container_name: ping-prometheus restart: always ports: - 9090:9090 command: - '--config.file=/etc/prometheus/prometheus.yml' - '--storage.tsdb.retention=7d' - '--storage.tsdb.path=/prometheus' networks: - pinger-net volumes: - type: bind source: ./prometheus.yml target: /etc/prometheus/prometheus.yml - type: bind source: ./prometheus-data target: /prometheus user: 0:0 pinger: image: nefilim/pinger:1.0 container_name: pinger restart: always command: -Xmx=64m -Xms=64m -Dconfig.file=/opt/docker/etc/application.conf -Dlogback.configurationFile=/opt/docker/etc/logback.xml networks: - pinger-net volumes: - type: bind source: ./etc target: /opt/docker/etc networks: pinger-net: