Container para emitir Certificados Let's Encrypt, com o Dehydrated
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.
 
 
will Farrell 59cb6c2f6f fix travis build path 10 years ago
.gitignore init commit 10 years ago
.travis.yml fix travis build path 10 years ago
Dockerfile init commit 10 years ago
README.md fix travis build path 10 years ago
config init commit 10 years ago
docker-entrypoint.sh init commit 10 years ago
letsencrypt.env.sample init commit 10 years ago

README.md

docker-letsencrypt

container to generate letsencrypt certs using dehydrated + lexicon

Dockerfile

Use to set your own defaults

FROM willfarrell/letsencrypt:latest

COPY config /etc/dehydrated/config

ENV

# defaults to `staging`, use `production` when ready.
LE_ENV=staging
# Only required if you plan to use dns-01 challenges (use for private services)
PROVIDER=cloudflare
LEXICON_CLOUDFLARE_USERNAME=
LEXICON_CLOUDFLARE_TOKEN=

Testing

docker build -t letsencrypt .
docker rm -f letsencrypt

# private
docker run \
    --env-file letsencrypt.env \
    letsencrypt \
    dehydrated \
        --cron --domain letsencrypt.willfarrell.ca \
        --out /etc/ssl \
        --hook dehydrated-dns \
        --challenge dns-01 \
        --force

# public
docker run -d \
    --volumes-from nginx_nginx_1 \
    --env-file letsencrypt.env \
    letsencrypt \
    dehydrated \
        --cron --domain letsencrypt.willfarrell.ca \
        --out /etc/ssl \
        --challenge http-01 \
        --force

# reload nginx
docker exec -it nginx_nginx_1 /etc/scripts/make_hpkp && /etc/init.d/nginx reload                                                                          

Deploy

# private
docker run \
    --volumes-from nginx_nginx_1 \
    --env-file letsencrypt.env \
    letsencrypt \
    dehydrated \
        --cron --domain letsencrypt.willfarrell.ca \
        --out /etc/ssl \
        --hook dehydrated-dns \
        --challenge dns-01

# public
docker run -d \
    --volumes-from nginx_nginx_1 \
    --env-file letsencrypt.env \
    letsencrypt \
    dehydrated \
        --cron --domain letsencrypt.willfarrell.ca \
        --out /etc/ssl \
        --challenge http-01

TODO

  • Update to python 3 (not-supported lexicon#68)