Skip to content

Traefik

FeatureTraefikNginx
Auto SSL✅ Built-inManual
Dashboard✅ Built-in
Docker Auto-discoveryManual
ConfigYAMLCustom syntax
entryPoints:
web:
address: ":80"
http:
redirections:
entryPoint:
to: websecure
scheme: https
websecure:
address: ":443"
api:
dashboard: true
providers:
file:
filename: /etc/traefik/dynamic.yml
watch: true
certificatesResolvers:
letsencrypt:
acme:
email: your-email@example.com
storage: /etc/traefik/acme.json
httpChallenge:
entryPoint: web
http:
routers:
snapcode:
rule: "Host(`snapcode.yourdomain.com`)"
service: snapcode-service
entryPoints:
- websecure
tls:
certResolver: letsencrypt
middlewares:
- compression
- ratelimit
services:
snapcode-service:
loadBalancer:
servers:
- url: "http://localhost:8000"
- url: "http://localhost:8001"
healthCheck:
path: /
interval: 10s
middlewares:
compression:
compress: {}
ratelimit:
rateLimit:
average: 100
burst: 50
Terminal window
# Install
wget https://github.com/traefik/traefik/releases/download/v2.10.0/traefik_v2.10.0_linux_amd64.tar.gz
tar -xzf traefik_v2.10.0_linux_amd64.tar.gz
sudo mv traefik /usr/local/bin/
# Run
traefik --configFile=/etc/traefik/traefik.yml
  • ✅ Auto SSL (Let’s Encrypt)
  • ✅ Built-in dashboard
  • ✅ Dynamic configuration
  • ✅ Service discovery
  • ✅ Rate limiting middleware