./traefik bug
A Scalable and Highly Available Edge Router
Damien DUPORTAL:
Træfik's Developer Advocate @ Containous and Freelancer
Former Training Engineer @ CloudBees
Browse the slides: Use the arrows
Change chapter: Left/Right arrows
Next or previous slide: Top and bottom arrows
Overview of the slides: keyboard’s shortcut "o"
Speaker mode (and notes): keyboard’s shortcut "s"
We Believe in Open Source
We Deliver Traefik
Commercial Support for Traefik
12 people, 90% technical experts
Why, Mr Anderson?
That You Don’t Have to Write This Configuration File…?
MIT License
18,500+ ⭐
100M+ ⬇️
1400+ LGTM
330+ 👷
./traefik bug
Autofills the issue template (environment, configuration files, …)
Keep It Simple
With Docker:
entrypoint:
image: traefik:v1.7
command:
- "--docker"
- "--docker.domain=mycompany.org"
- "--acme.email=ssl-admin@mycompany.org"
- "--acme.httpChallenge.entryPoint=http"
# Or you could use a TOML file with "--configFile=/etc/traefik/traefik.toml
volumes:
- /var/run/docker.sock:/var/run/docker.sock
# https://www.mycompany.org
webserver:
image: nginx:alpine
labels:
- "traefik.frontend.rule=Host:www.mycompany.org"
# https://mycompany.org/webterminal
webterminal:
image: tsl0922/ttyd
labels:
- "traefik.frontend.rule=PathPrefixStrip:/webterminal"
expose:
- "7681"
# http://mycompany.org/jenkins
jenkins:
image: jenkins/jenkins:lts
labels:
- "traefik.frontend.rule=PathPrefix:/jenkins"
- "traefik.port=8080" # Because 50000 is also exposed
environment:
- JENKINS_OPTS=--prefix=/jenkins
# http://mycompany.org/gitserver
gitserver:
image: gitea/gitea:1.5
labels:
- "traefik.frontend.rule=PathPrefixStrip:/gitserver"
- "traefik.port=3000" # Because 22 is also exposed
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
# kubernetes.io/ingress.class: 'nginx'
kubernetes.io/ingress.class: 'traefik'
spec:
rules:
- host: mycompany.org
http:
paths:
- path: "/whoami"
backend:
serviceName: whoami
servicePort: 80