首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >kubernetes - Nginx,证书经理,安装秘密文件更新问题

kubernetes - Nginx,证书经理,安装秘密文件更新问题
EN

Stack Overflow用户
提问于 2021-05-06 06:33:12
回答 1查看 715关注 0票数 1

证书管理器的证书文件被安装在nginx卷上并正在使用。

e.g

nginx deploy.yaml -

代码语言:javascript
运行
复制
  volumes:
    - name: secret-volume
      secret:
        secretName: my.test.app.com
    - name: configmap-volume
      configMap:
        name: nginxconfigmap
  containers:
    - name: nginxhttps
      image: bprashanth/nginxhttps:1.0
      ports:
        - containerPort: 443
        - containerPort: 80
      volumeMounts:
        - mountPath: /etc/nginx/ssl
          name: secret-volume
        - mountPath: /etc/nginx/conf.d
          name: configmap-volume

和nginx.conf文件在中的应用

代码语言:javascript
运行
复制
    ssl_certificate /etc/nginx/ssl/tls.crt;
    ssl_certificate_key /etc/nginx/ssl/tls.key;

而且效果很好。此外,证书由证书经理顺利地重新颁发.

但是,由于重新颁发的证书文件没有在nginx容器中更新,因此据说证书在从浏览器访问时已过期。

如果我强制重新启动这个吊舱没有问题,但是我想让它自动化。

我想知道是否有一种方法可以自动更新证书,而不强制重新启动吊舱。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-06 06:45:11

不确定证书是否适用于您的特定应用程序,它使用、Nginx、或main Nginx ingress,后者处理集群的所有通信量。

如果是主要的Nginx,它处理集群的整个流量,那么您可以创建入口,并在那里添加证书管理器集成。

证书经理将管理证书并将其保存在秘密中,入口将使用该秘密运行时。每当证书获得更新,机密内容将更新,而入口将使用相同的秘密名称。

在上面的场景中,不需要重新启动荚。

如果您想阅读和检查整个示例,请参阅:https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nginx-ingress-with-cert-manager-on-digitalocean-kubernetes

在上面的示例中,Nginx在使用秘密存储的证书时,将在没有任何卷中证书的情况下运行。

关于YAML示例,如果发行者ingress,请检查:https://stackoverflow.com/a/67184948/5525824

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67412958

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档