我正在尝试使用证书管理器来设置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进行演示和播放。
答案 0 :(得分:2)
不。您不能将IP地址用于Ingress。要使用IP地址,您需要对其进行配置以指向您的工作节点并创建NodePort服务,该服务将允许您浏览到http://IP:NODEPORT
。