services: traefik: image: traefik:v2.10 restart: always networks: - transfer_sh_default command: - --api.insecure=false - --providers.docker=true - --providers.docker.exposedbydefault=false - --entrypoints.web.address=:80 - --entrypoints.web.http.redirections.entryPoint.to=https - --entrypoints.web.http.redirections.entryPoint.scheme=https - --entrypoints.https.address=:443 - --certificatesresolvers.le_transfer_sh.acme.dnschallenge=true - --certificatesresolvers.le_transfer_sh.acme.dnschallenge.provider=rfc2136 - --certificatesresolvers.le_transfer_sh.acme.dnschallenge.resolvers=8.8.8.8,8.8.4.4 - --certificatesresolvers.le_transfer_sh.acme.email=transfer.sh@moeny.ai - --certificatesresolvers.le_transfer_sh.acme.storage=/letsencrypt/acme.json - --log.level=DEBUG environment: - RFC2136_TSIG_KEY=${TSIG_KEY} - RFC2136_TSIG_SECRET=${TSIG_SECRET} - RFC2136_NAMESERVER=${DNS_SERVER} - RFC2136_ZONE=${DNS_ZONE} - RFC2136_TSIG_ALGORITHM=hmac-sha256 - RFC2136_DEBUG=true - RFC2136_TIMEOUT=60 ports: - "8090:80" - "8490:443" volumes: - traefik_moeny_transfer_sh:/letsencrypt:rw - /var/run/docker.sock:/var/run/docker.sock:ro transfer: image: dutchcoders/transfer.sh:latest restart: always networks: - transfer_sh_default volumes: - /mnt/nfs/moeny-transfer:/txdata labels: - "traefik.enable=true" - "traefik.http.routers.transfer_sh.rule=Host(`tx.moeny.ai`)" - "traefik.http.routers.transfer_sh.entrypoints=https" - "traefik.http.routers.transfer_sh.tls.certresolver=le_transfer_sh" - "traefik.http.services.transfer_sh.loadbalancer.server.port=8080" command: - --provider=local - --basedir=/txdata - --random-token-length=10 - --http-auth-user=${TRANSFER_USER} - --http-auth-pass=${TRANSFER_PASS} volumes: traefik_moeny_transfer_sh: { driver: local } networks: transfer_sh_default: name: transfer_sh_default