Skip to content

Instantly share code, notes, and snippets.

@SrMouraSilva
Created October 4, 2018 00:13
Show Gist options
  • Save SrMouraSilva/7f38b313fc237f1486b1291b046a202f to your computer and use it in GitHub Desktop.
Save SrMouraSilva/7f38b313fc237f1486b1291b046a202f to your computer and use it in GitHub Desktop.
Traefik

Configurar Traefik

1º Criar uma rede

sudo docker network create -d bridge ambientes

2º Subir Traefik

# -p 80:80 Porta que acessará os serviços
# -p 8080:8080 Porta de monitoramento
# --network=ambientes Utilizar a rede que criamos
# -v /var/run/docker.sock:/var/run/docker.sock  Para enxergar o docker
sudo docker run -d \
  --name traefik \
  -p 80:80 \
  -p 8080:8080 \
  --network=ambientes \
  -v /var/run/docker.sock:/var/run/docker.sock \
  traefik --api --docker --logLevel=DEBUG

3º Acesse http://localhost/ É para dar erro 404

3º Acesse http://localhost:8080 Nenhuma imagem é listada

4º Executemos um serviço para o localhost:80

sudo docker run -d --name w1 --label traefik.frontend.rule=Host:localhost --network=ambientes emilevauge/whoami

Agora acesse http://localhost/ e http://localhost:8080

5º Executemos um serviço para o nginx.localhost:80

sudo docker run -d --name n1 --label traefik.frontend.rule=Host:nginx.localhost --network=ambientes nginx:alpine

Agora acesse http://nginx.localhost e http://localhost:8080


Alternativa com docker compose

version: '3.7'

services:
  reverse-proxy:
    image: traefik # The official Traefik docker image
    command: --api --docker --logLevel=DEBUG # Enables the web UI and tells Træfik to listen to docker
    ports:
      - "80:80"     # The HTTP port
      - "8080:8080" # The Web UI (enabled by --api)
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen to the Docker events
    networks:
      - ambientes

networks:
  ambientes:
    name: ambientes
    driver: bridge
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment