2017-05-27 1 views
1

Voici comment je renouveler mon certificats de Crypter Let par conteneur docker (de certbot):Ubuntu: Cronjob pour renouveler les certificats de cerbot

$ sudo docker stop nginx 
$ sudo docker run -it --rm -p 443:443 --name certbot -v /etc/letsencrypt:/etc/letsencrypt -v /var/log/letsencrypt:/var/log/letsencrypt quay.io/letsencrypt/letsencrypt:latest renew 
$ sudo docker start nginx 

Maintenant, je voudrais faire cela comme une tâche cron sur mon serveur unbuntu. Pour cela, je voudrais ajouter une entrée dans /etc/crontab.

Mais où dois-je mettre le script pour le renouvellement?

letsencrypt.sh

#!/bin/sh 
sudo docker stop nginx 
sudo docker run -it --rm -p 443:443 --name certbot -v /etc/letsencrypt:/etc/letsencrypt -v /var/log/letsencrypt:/var/log/letsencrypt quay.io/letsencrypt/letsencrypt:latest renew 
sudo docker start nginx 

Si cela est exact, que suggérez-vous pour obtenir une note si le processus échoue/est réussie?

Répondre

0

Je pense que vous pouvez créer un crontab pour sûr utilisateur dans un nouveau conteneur ou votre hôte docker et ajouter une ligne par exemple (exécuter un renouvellement une fois par mois):

0 0 1 * * /path/to/letsencrypt.sh 2>> /var/log/letsencrypt.log 

Ajouter l'utilisateur à le groupe de dockers. Les utilisateurs qui peuvent exécuter des commandes Docker disposent d'un contrôle racine efficace du système.

Accordez ce privilège uniquement aux utilisateurs de confiance.