【问题标题】:Renew Let's encrypt certificate automatically without stopping nginx hosted on docker更新让我们自动加密证书而不停止托管在 docker 上的 nginx
【发布时间】:2021-06-02 08:41:00
【问题描述】:

我使用 nginx 作为 docker 上托管的站点的代理和 SSL 终止。应用程序和 nginx 都在 docker 上。我已经直接在 Ubuntu 服务器上安装了让我们使用 Certbot 加密 SSL。现在通过使用 docker-compose 中的卷映射它来使用安装在 Docker 中的 Ubuntu 服务器上的 SSL 证书。

我注意到更新证书的 Certbot cron 作业失败,因为 docker nginx 实例正在使用端口 80 和 443。

要续订,我需要停止 docker,然后运行 ​​certbot renew 命令,它工作正常。

在不停止运行 nginx 的 docker 容器的情况下自动续订的最佳方法是什么。

【问题讨论】:

    标签: docker nginx lets-encrypt certbot


    【解决方案1】:

    Certbot 具有多种生成和更新证书的模式。其中一种模式是nginx 续订模式。从nginx 文档中查看this tutorial

    另一个选项是certbot documents 中描述的webroot 选项,您需要告诉certbot 带有--webroot-path 的网络服务器的根文件夹在哪里,certbot 将用于挑战-响应身份验证。

    根据您的容器,您可能需要在证书更新后重新启动容器,以便 nginx 加载新证书。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-29
      • 1970-01-01
      • 2018-08-30
      • 2018-04-12
      • 2016-12-28
      • 2019-10-20
      相关资源
      最近更新 更多