alainivars/utils2devops

View on GitHub
utils2devops/docker/local-proxy-prom-elk/traefik.yml

Summary

Maintainability
Test Coverage
version: '3.7'

x-default-opts:
  &default-opts
  logging:
    options:
      max-size: "1m"

networks:
  proxy:
    driver: overlay
    name: traefik_proxy
#  default:
#    driver: bridge

services:

  traefik:
    <<: *default-opts
    image: traefik:1.7-alpine
    networks:
#      - default
      - proxy
    ports:
      - "80:80"
      - "8080:8080"
      - "443:443"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /dev/null:/traefik.toml
    command:
      # Use your favourite settings here, but add:
      - --docker
      - --docker.swarmMode
      - --docker.domain=traefik
      - --docker.network=traefik_proxy
      - --docker.watch
      - --api
      - --defaultentrypoints=http,https
      - --entryPoints=Name:https Address::443 TLS
      - --entryPoints=Name:http Address::80 # don't force HTTPS
    deploy:
      placement:
        constraints: [node.role == manager]
      labels:
        - traefik.port=8080
        - traefik.frontend.rule=Host:traefik.${DOMAIN:-example.com}
#      - "traefik.frontend.rule=Host:${DOMAIN}; PathPrefixStrip: /traefik"
        - traefik.enable=true
        - traefik.tags=${TRAEFIK_PUBLIC_TAG:-traefik-public}
        - traefik.docker.network=traefik-public