【问题标题】:Configure Kestrel for HTTPS using environmnet variables使用环境变量为 HTTPS 配置 Kestrel
【发布时间】:2019-10-29 00:20:31
【问题描述】:

我正在尝试使用 Kubernetes 设置 ASPNET.Core 3.0 Web 应用程序,但我无法让 Kestrel 使用 https。

我在网上搜索了一些关于两个环境变量的信息,我可以声明传递证书的路径和密码。

我已经使用这些变量进行了 Kubernetes 部署,如下所示:

    spec:
      containers:
      - env:
        - name: ASPNETCORE_URLS
          value: http://+:80;https://+:443
        - name: ASPNETCORE_KESTREL_CERTIFICATE_PASSWORD
          value: password
        - name: ASPNETCORE_KESTREL_CERTIFICATE_PATH
          value: /app/tls/certificate.pfx
        volumeMounts:
        - name: storage
          mountPath: "/app/tls"
      volumes:
      - name: storage
        persistentVolumeClaim:
          claimName: tls-storage

我在未启用 https 的情况下运行该应用程序,发现卷已正确安装在 pod 内,certificate.pfx 存在于 /app/tls/ 中。

有人知道 Kestrel 是否默认配置为从这些环境变量中获取值,还是我也应该在 Program.cs/Startup.cs 中编写一些代码?

【问题讨论】:

    标签: asp.net-core kubernetes kestrel


    【解决方案1】:

    其实我只是找到了正确的环境变量:

    ASPNETCORE_Kestrel__Certificates__Default__Password

    ASPNETCORE_Kestrel__Certificates__Default__Path

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-02
      • 2019-11-15
      • 2020-12-08
      • 2022-08-13
      • 1970-01-01
      • 2013-05-27
      • 2012-01-11
      相关资源
      最近更新 更多