--- version: "3.8" services: app: image: prom/node-exporter:v1.7.0 user: root environment: - NODE_ID={{.Node.ID}} volumes: - /proc:/host/proc:ro - /sys:/host/sys:ro - /:/rootfs:ro - /etc/hostname:/etc/nodename:ro command: - "--path.sysfs=/host/sys" - "--path.procfs=/host/proc" - "--path.rootfs=/rootfs" - "--collector.textfile.directory=/etc/node-exporter/" - "--collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc)($$|/)" - "--no-collector.ipvs" configs: - source: entrypoint target: /entrypoint.sh networks: - internal - proxy entrypoint: [ "/bin/sh", "-e", "/entrypoint.sh" ] deploy: restart_policy: condition: on-failure labels: - "backupbot.backup=true" - "traefik.enable=true" - "traefik.http.services.${STACK_NAME}-node.loadbalancer.server.port=9100" - "traefik.http.routers.${STACK_NAME}-node.rule=Host(`node.${DOMAIN}`)" - "traefik.http.routers.${STACK_NAME}-node.entrypoints=web-secure" - "traefik.http.routers.${STACK_NAME}-node.tls=true" - "traefik.http.routers.${STACK_NAME}-node.tls.certresolver=${LETS_ENCRYPT_ENV}" - "traefik.http.routers.${STACK_NAME}-node.middlewares=basicauth@file" - "coop-cloud.${STACK_NAME}.version=1.1.0+v1.7.0" - "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}" cadvisor: image: gcr.io/cadvisor/cadvisor:v0.49.1 command: - "-logtostderr" - "--enable_metrics=cpu,cpuLoad,disk,diskIO,process,memory,network" # all possible metrics: advtcp,app,cpu,cpuLoad,cpu_topology,cpuset,disk,diskIO,hugetlb,memory,memory_numa,network,oom_event,percpu,perf_event,process,referenced_memory,resctrl,sched,tcp,udp. - "--housekeeping_interval=120s" - "--docker_only=true" volumes: - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro - /sys:/sys:ro - /var/run:/var/run:ro - /:/rootfs:ro networks: - internal - proxy deploy: restart_policy: condition: on-failure labels: - "traefik.enable=true" - "traefik.http.services.${STACK_NAME}-cadvisor.loadbalancer.server.port=8080" - "traefik.http.routers.${STACK_NAME}-cadvisor.rule=Host(`cadvisor.${DOMAIN}`)" - "traefik.http.routers.${STACK_NAME}-cadvisor.entrypoints=web-secure" - "traefik.http.routers.${STACK_NAME}-cadvisor.tls=true" - "traefik.http.routers.${STACK_NAME}-cadvisor.tls.certresolver=${LETS_ENCRYPT_ENV}" - "traefik.http.routers.${STACK_NAME}-cadvisor.middlewares=basicauth@file" healthcheck: test: wget --quiet --tries=1 --spider http://localhost:8080/healthz || exit 1 interval: 15s timeout: 15s retries: 5 start_period: 30s configs: entrypoint: name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_VERSION} file: node-exporter-entrypoint.sh networks: proxy: external: true internal: