Running certbot in docker container
create docker-compose.yml
#docker-compose.yml version: "3.8" services: certbot: image: certbot/certbot volumes: - ./etc-letsencrypt:/etc/letsencrypt - ./var-lib-letsencrypt:/var/lib/letsencrypt - ./var-log-letsencrypt:/var/log/letsencrypt
create required directories
mkdir etc-letsencrypt mkdir var-lib-letsencrypt mkdir var-log-letsencrypt docker-compose run --name cbcontainer certbot certonly -d YOUR_DOMAIN --manual --preferred-challenges dns
first run
docker-compose run certbot certonly -d YOUR_DOMAIN --manual --preferred-challenges dns
Certificates will be saved in:
Certificate -> etc-letsencrypt/live/YOUR_DOMAIN/fullchain.pem Key -> etc-letsencrypt/live/YOUR_DOMAIN/privkey.pem
Delete the container:
docker container rm cbcontainer
Renew cert
docker-compose run --name certbot certbot certonly --webroot -w /tmp/letsencrypt -d YOUR_DOMAIN docker container rm certbot
Deploy cert example
cp -LRv YOUR_CERTBOT_DIR/etc-letsencrypt/live/* TARGET_DIR