【问题标题】:What's the easiest way to create an HTTPS endpoint on Kubernetes?在 Kubernetes 上创建 HTTPS 端点最简单的方法是什么?
【发布时间】:2019-09-24 17:47:14
【问题描述】:

我使用 responder 创建了一个简单的 Python API,并使用 Kubernetes 将其部署到 Google Cloud。我没有域名,只有原始 IP 地址。

http://192.0.2.42/api/myapi

并部署为:

kubectl get service
NAME         TYPE           CLUSTER-IP    EXTERNAL-IP    PORT(S)        AGE
kubernetes   ClusterIP      192.0.2.1     <none>         443/TCP        5d15h
web          LoadBalancer   192.0.2.100   192.0.2.42        80:32749/TCP   5d15h

kubectl get pods
NAME                   READY   STATUS    RESTARTS   AGE
my-pod-name   1/1     Running   0          16h

我想将其设为 HTTPS 端点,以便将其用作:

https://192.0.2.42/api/myapi

但我正在努力寻找最简单的方法。

这应该是通过 Kubernetes 完成的事情,还是在 Python 代码中完成的事情?响应者似乎没有为此提供简单的机制。

【问题讨论】:

标签: python ssl kubernetes lets-encrypt


【解决方案1】:

如果您正在寻找最低限度的工作量来执行此操作,则需要在 docker 容器中安装 SSL 证书。您也可以像现在一样继续使用externalIP

然后在响应者中,您可以启用 HSTS 将 http 重定向到 https。

api = responder.API(enable_hsts=True)

然后只需访问您的 pod

https://192.0.2.42/api/myapi

【讨论】:

猜你喜欢
  • 2014-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-29
  • 1970-01-01
  • 2020-02-20
相关资源
最近更新 更多