【问题标题】:Ubuntu: Cronjob for renew certbot certificatesUbuntu:用于更新 certbot 证书的 Cronjob
【发布时间】:2017-10-28 06:27:42
【问题描述】:

这就是我通过 docker 容器 (certbot) 更新我的 Let's encrypt 证书的方式:

$ 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

如果这是正确的,如果过程失败/成功,您会建议获取什么注释?

【问题讨论】:

标签: ubuntu docker cron lets-encrypt certbot


【解决方案1】:

我认为您可以在新容器或您的 docker 主机中为 safe 用户创建一个 crontab,并添加一行例如(每月运行一次更新):

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

将用户添加到 docker 组。可以运行 Docker 命令的用户对系统具有有效的 root 控制权。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-19
    • 2019-08-17
    • 2019-05-16
    • 2017-02-23
    • 2021-06-12
    • 2019-09-10
    • 2018-08-13
    • 2020-09-13
    相关资源
    最近更新 更多