【问题标题】:Kubernetes: exposing NGINX Ingress with Let's EncryptKubernetes:使用 Let's Encrypt 公开 NGINX Ingress
【发布时间】:2019-05-17 11:33:57
【问题描述】:

我正在尝试使用证书管理器设置 LetsEncrypt SSL 证书。 我已经通过 Helm 成功部署了 Cert Manager 并坚持配置 ingress.yaml

$ sudo kubectl create --edit -f https://raw.githubusercontent.com/jetstack/cert-manager/master/docs/tutorials/quick-start/example/ingress.yaml

我有这个:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: nginx
  name: kuard
  namespace: default
spec:
  rules:
  - host: example.example.com
    http:
      paths:
      - backend:
          serviceName: kuard
          servicePort: 80
        path: /
  tls:
  - hosts:
    - example.example.com
    secretName: quickstart-example-tls

所以我刚刚将主机从 example.com 替换为我的外部 IP 并得到了这个:

A copy of your changes has been stored to "/tmp/kubectl-edit-qx3kw.yaml"
The Ingress "kuard" is invalid: spec.rules[0].host: Invalid value: must be a DNS name, not an IP address

有什么方法可以只使用我的外部 IP 进行设置吗?我还没有为我的应用选择域名,只想使用普通 IP 进行演示和玩耍。

【问题讨论】:

    标签: nginx kubernetes lets-encrypt kubectl kubernetes-ingress


    【解决方案1】:

    没有。您不能为 Ingress 使用 IP 地址。要使用 IP 地址,您需要将其配置为指向您的工作节点并创建一个 NodePort 服务,这将允许您浏览到 http://IP:NODEPORT

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-25
      • 2019-08-12
      • 2021-07-14
      • 1970-01-01
      相关资源
      最近更新 更多