Public | Automated Build

Last pushed: a year ago
Short Description
Container to create and renew Let's encrypt certificates easily
Full Description


Create and renew Let's encrypt certificates easily (only for nginx based server)

Directory layout

  • /certs contains generated certificates and, optionnally, dhparams.pem file
  • /nginx contains generated .acme-nginx file, to include in your nginx server files -- do not edit


To run this container, you must mount the above directories (/certs and /nginx) and add LETSENCRYPT_EMAIL to the container environment.

For example:

docker run -d --name container_name \
    -v /etc/nginx/conf.d:/nginx \
    -v /etc/nginx/certs:/certs \
    -e LETSENCRYPT_EMAIL=email@nobody.tld \

Next, for the current configuration (/nginx mounted in /etc/nginx/conf.d), add this line into your server configuration files

include /etc/nginx/conf.d/.acme-nginx

To create new certificates, simply run :

docker exec container_name acmedocker want domain.tld


Following environment variables are available:

  • LETSENCRYPT_EMAIL: registration email (mandatory)
  • STAGING_MODE: if true, acmetool use the staging url of let's encrypt (allow you to get 30k certificates per week instead of 5, usefull for test) [default: false]
  • KEY_TYPE: key type for certificates (rsa/ecdsa) [default: ecdsa]
  • RSA_SIZE: rsa size key [default: 2048]
  • ECDSA_CURVE: algorithm name for ecdsa (nistp256/nistp384/nistp521) [default: nistp256]
  • DHPARAM_SIZE: if is set, the container generate an dhparams.pem file with DHPARAM_SIZE for size [default: none]
Docker Pull Command
Source Repository