- 使用官方阿里云dns插件:https://github.com/pragkent/alidns-webhook(安装比较慢请耐心等待)
- 也可以使用其他开发者使用的:https://gitee.com/StephenEvenson/cert-manager-alidns-webhook?_from=gitee_search(安装比较慢请耐心等待)
- dns-01方式支持泛域名解析https证书
- 查看cert-manager支持的DNS厂商:https://cert-manager.io/docs/configuration/acme/dns01/
- 登录阿里云点击头像accessKey管理
- 复制access-key和secret-key后续用的到
- 尽量安装在和cert-manager一个namespace
- 基本什么都不需要改,下一步直接安装
- 在namespace创建配置文件将阿里云得access-key和secret-key填入
apiVersion: cert-manager.io/v1alpha2
kind: ClusterIssuer
metadata:
name: letsencrypt-staging
spec:
acme:
# 改为自己得邮箱
email: certmaster@example.com
server: https://acme-v02.api.letsencrypt.org/directory
privateKeySecretRef:
name: letsencrypt-staging-account-key
solvers:
- dns01:
webhook:
#和上面安装时保持一致
groupName: acme.yourcompany.com
solverName: alidns
config:
# 这个参数标识服务器所在地,经过测试不填写,或者随便填写没有影响
region: "beijing"
accessKeySecretRef:
# 引用刚才创建得配置文件,注意文件名称和key名称是否对应
name: alidns-secret
key: access-key
secretKeySecretRef:
name: alidns-secret
key: secret-key
# 开始生成 kubectl apply -f clusterIssuer.yaml #查看状态(需要等一会) kubectl get ClusterIssuer--all-namespaces生成证书(certificate.yaml)
apiVersion: cert-manager.io/v1alpha2
kind: Certificate
metadata:
name: example-tls
# 指定证书生成到哪个工作空间,不指定也可以
namespace: docs
spec:
#生成后证书的配置文件名称
secretName: example-com-tls
dnsNames:
- example.com
- "*.example.com"
issuerRef:
name: letsencrypt-staging
kind: ClusterIssuer
# 开始生成 kubectl apply -f certificate.yaml #查看状态(需要等一会) kubectl get certificate--all-namespaces使用证书



