Ubuntu:Cronjob用于续订certbot证书

时间:2017-05-27 13:02:23

标签: ubuntu docker cron lets-encrypt certbot

这就是我通过docker container(certbot)续订Let的加密证书的方式:

$ 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

现在我想在我的Ubuntu服务器上做一个cronjob。为此我会在/etc/crontab中添加一个条目。

但是我应该把脚本放到哪里更新?

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

如果这是正确的,如果流程失败/成功,您建议如何获得备注?

1 个答案:

答案 0 :(得分:0)

我认为您可以在新容器或泊坞主机中为安全用户创建一个crontab,并添加一行代码(每月运行一次续订):

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

将用户添加到泊坞窗组。可以运行Docker命令的用户可以对系统进行有效的根控制。

仅将此权限授予受信任的用户。