Skip to content

Instantly share code, notes, and snippets.

@leifermendez
Last active August 6, 2025 10:33
Show Gist options
  • Select an option

  • Save leifermendez/36b19ad86b26677e3cbbf25809343ca7 to your computer and use it in GitHub Desktop.

Select an option

Save leifermendez/36b19ad86b26677e3cbbf25809343ca7 to your computer and use it in GitHub Desktop.
demo.txt
version: '3.9'
services:
traefik:
image: traefik:v3.0
container_name: traefik
command:
- --providers.docker=true
- --providers.docker.exposedbydefault=false
# Entrypoints
- --entrypoints.web.address=:80
- --entrypoints.websecure.address=:443
# ACME (HTTP-01, sin redirección)
- --certificatesresolvers.letsencrypt.acme.httpchallenge=true
- --certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web
- --certificatesresolvers.letsencrypt.acme.email=admin@buildervoice.cloud
- --certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- traefik-letsencrypt:/letsencrypt
networks: [public]
restart: always
tenant-extractor:
image: leifermendez/tenant-extractor:latest
container_name: tenant-extractor-app
env_file: [.env]
labels:
- "traefik.enable=true"
- "traefik.http.routers.tenants.rule=HostRegexp(\"{sub:[a-zA-Z0-9-]+}.buildervoice.cloud\")"
- "traefik.http.routers.tenants.entrypoints=web,websecure"
- "traefik.http.routers.tenants.tls=true"
- "traefik.http.routers.tenants.tls.certresolver=letsencrypt"
- "traefik.http.services.tenants.loadbalancer.server.port=3000"
networks: [public]
restart: always
volumes:
traefik-letsencrypt:
networks:
public:
driver: bridge
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment