Skip to content

Instantly share code, notes, and snippets.

@wouterds
Created February 9, 2020 11:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save wouterds/cf2b409f1811ce96c6cebbce43dd38ba to your computer and use it in GitHub Desktop.
Save wouterds/cf2b409f1811ce96c6cebbce43dd38ba to your computer and use it in GitHub Desktop.
Traefik reverse proxy with letsencrypt & auto forwarding of http to https
version: "3.3"
services:
traefik:
image: traefik:2.1
container_name: reverse-proxy
command:
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
- "--certificatesresolvers.myhttpchallenge.acme.httpchallenge=true"
- "--certificatesresolvers.myhttpchallenge.acme.httpchallenge.entrypoint=web"
- "--certificatesresolvers.myhttpchallenge.acme.email=admin@website.com"
- "--certificatesresolvers.myhttpchallenge.acme.storage=/letsencrypt/acme.json"
ports:
- "80:80"
- "443:443"
- "8080:8080"
volumes:
- "./letsencrypt:/letsencrypt"
- "/var/run/docker.sock:/var/run/docker.sock:ro"
whoami:
image: containous/whoami
container_name: simple-service
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.https-redirect.redirectscheme.scheme=https"
- "traefik.http.routers.whoami-http.rule=Host(`server01.website.com`)"
- "traefik.http.routers.whoami-http.entrypoints=web"
- "traefik.http.routers.whoami-http.middlewares=https-redirect"
- "traefik.http.routers.whoami.rule=Host(`server01.website.com`)"
- "traefik.http.routers.whoami.entrypoints=websecure"
- "traefik.http.routers.whoami.tls.certresolver=myhttpchallenge"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment