Dockerized Lego with cron.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Michel Roux ba9b11dbb0 Merge pull request 'Update goacme/lego Docker tag to v4.9.0' (#2) from renovate/goacme-lego-4.x into main 1 day ago
app Revert "Debug mode" 1 month ago
.drone.yml Update acme-lego-cron 2 months ago
.gitignore Update Dockerfile 2 years ago
Dockerfile Update goacme/lego Docker tag to v4.9.0 1 day ago
LICENSE Initial commit 2 years ago Update acme-lego-cron 2 months ago
crontab Init 2 years ago
renovate.json Add renovate.json 2 months ago


Build Status Docker Hub

Dockerized Lego with cron. Caters to DNS ACME challenge; other challenges can be worked out using LEGO_ARGS.

Environment variables

Environment variables are used to control various steps of the automation process.


Name Default value Description Corresponds to lego argument
STAGING 0 Whether to use production or staging LetsEncrypt endpoint. 0 for production, 1 for staging
KEY_TYPE ec384 Type of key. --key-type
DOMAINS "" Domains (delimited by ';' ) --domains, -d
EMAIL_ADDRESS "" Email used for registration and recovery contact. --email, -m
PROVIDER "" DNS Provider. Valid values are: acmedns, alidns, arvancloud, auroradns, autodns, azure, bindman, bluecat, checkdomain, clouddns, cloudflare, cloudns, cloudxns, conoha, constellix, desec, designate, digitalocean, dnsimple, dnsmadeeasy, dnspod, dode, dreamhost, duckdns, dyn, dynu, easydns, edgedns, exec, exoscale, fastdns, gandi, gandiv5, gcloud, glesys, godaddy, hetzner, hostingde, httpreq, iij, internal, inwx, joker, lightsail, linode, linodev4, liquidweb, luadns, mydnsjp, mythicbeasts, namecheap, namedotcom, namesilo, netcup, netlify, nifcloud, ns1, oraclecloud, otc, ovh, pdns, rackspace, regru, rfc2136, rimuhosting, route53, sakuracloud, scaleway, selectel, servercow, stackpath, transip, vegadns, versio, vscale, vultr, yandex, zoneee, zonomi --dns
DNS_TIMEOUT 10 Set the DNS timeout value to a specific value in seconds. --dns-timeout.
LEGO_ARGS "" Send arguments directly to lego, e.g. "--dns.disable-cp" or "--dns.resolvers"


This example get one certificate for * and using cloudflare dns :

  • Use staging endpoint during development.
  • You can share the same volume letsencrypt with other machines.
version: "3"
    image: xefir/acme-lego-cron:latest
      STAGING: 1
      DOMAINS: ";*"
      PROVIDER: cloudflare
      LEGO_ARGS: "--dns.disable-cp --dns.resolvers"
      - "letsencrypt:/letsencrypt"