nginx ingress controller配置tls

77 阅读1分钟

将公钥和私钥转为base64编码

# -w 0 表示不换行,默认会换行
cat tls.crt | base64 -w 0
cat tls.key | base64 -w 0

secret.yaml文件

apiVersion: v1
data:
  tls.crt: LS0tLS1CRU==
  tls.key: LS0tLS1CRUdJTiBSU0EgUFJ=
kind: Secret
metadata:
  name: 52anime-secret
  namespace: default
type: kubernetes.io/tls  # tls类型的secret

应用

kubectl apply -f secret.yaml

配置ingress

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: go-v3-ingress
spec:
  ingressClassName: nginx # use only with k8s version >= 1.18.0
  tls:
   - 
     hosts:
       - www.52anime.cn          # 证书对应域名
     secretName: 52anime-secret  # 前面创建的secret的
  rules:
  - host: www.52anime.cn
    http:
      paths:
      - path: /api
        pathType: Prefix
        backend:
          service:
            name: go-v3-service
            port:

应用后查看结果

image.png