Azure 容器服务和 Kubernetes 的 HTTPS

HTTPS with Azure Container Services and Kubernetes

任何人都可以展示如何在 ACS 中的 kubernetes 上设置 https 吗? 大多数教程建议使用 LetsEncrypt,但似乎不适合我的情况,因为我有一个我想使用的现有 .pfx。

我使用以下 cli 命令创建了 az acs:

az acs create --orchestrator-type kubernetes --resource-group myResourceGroup --name myAppName --generate-ssh-keys

一切都创建好后,我使用以下命令启动我的服务和部署

kubectl create -f myApp.yaml

其中 myApp.yaml 内容如下:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: myApp-deployment
spec:
  replicas: 3
  template:
    metadata:
      labels:
        app: myApp
    spec:
      containers:
      - name: myApp
        image: myAppcontainerregistry.azurecr.io/myApp-images:latest
        ports:
        - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: myAppservice
spec:
  type: LoadBalancer
  ports:
  - port: 80
  selector:
    app: myApp

这让我的应用程序按照 http:// 的预期工作,但我不太确定我的下一步是让 https:// 工作。也感谢任何有用的链接。

P.s。我的应用程序是托管在 kestrel 中的 net core 2.0。

也许我们可以使用 Nginx Ingress Controller 将其存档在 ACS 中。

入口控制器是这样工作的:

我们可以按照以下步骤来做:

1 部署 Nginx Ingress 控制器
2 创建 TLS 证书
3 部署测试 http 服务
4 配置 TLS 终止
有关在 Azure 上的 Kubernetes 上为 TLS 终止配置 Nginx Ingress Controller 的更多信息,请参阅此 blog.

这里有一个,请参考

对了,这里a example关于使用Azure容器服务在kubernetes上配置Ingress,请参考。