# How to use docker-compose with Traefik Traefik is a modern reverse proxy aimed towards applications running through container orchestrators. Some of the benefits of using Traefik over NGinx are: - Real-time configuration changes - no need to reload the proxy - Auto discovery and configuration of services through a vast amount of container orchestrators. - Built-in official support for Let's Encrypt SSL with certificate auto-renewal - Supports path-based routing without need to [hard-code it in global config](../Production/nginx.tmpl). ## Traefik Specific Environment Variables - `BTCPAYGEN_REVERSEPROXY` to `traefik`. - `LETSENCRYPT_EMAIL`: Optional, The email Let's Encrypt will use to notify you about certificate expiration. - `BTCPAYGEN_ADDITIONAL_FRAGMENTS`: Add `traefik` - `BTCPAY_ADDITIONAL_HOSTS`: Traefik can not accept list of hosts. Add additional hosts in a new file named e.g. `btcpayserver-traefic.custom.yml`: ``` version: "3" services: btcpayserver: labels: traefik.http.routers.btcpayserver2.rule: Host(`additional.example.com`) traefik.http.routers.btcpayserver3.rule: Host(`another-additional.example.com`) ``` ![Architecture](Production.png)