如何解决如何在 Kubernetes 中使用 HTTPS 在本地运行 asp.net 核心
我目前有一个用于 Asp.Net Core 的 docker-compose 设置。但是,在 Kubernetes 中测试集群时,我遇到了 kestral 的 SSL 问题。最初使用 Docker/Docker-compose 您可以使用
设置本地 SSLdotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\<app_name>.pfx -p <password>
然后
dotnet dev-certs https --trust
终于
dotnet user-secrets set "Kestrel:Certificates:Development:Password" "<password>"
在 Docker-compose 中,我将卷设置为指向此证书
volumes:
- ${APPDATA}\microsoft\UserSecrets\:/root/.microsoft/usersecrets
- ${USERPROFILE}\.aspnet\https:/root/.aspnet/https/
我很好奇如何使用 kubernetes 在本地测试 https。我看到了一个 git repo https://github.com/Lybecker/k8s-friendly-aspnetcore,但是我不知道如何将 .pfx 文件从我的本地计算机获取到机密中,我认为复制和粘贴不是可行的方法。
我看了这篇 SO post Access .NET Core app on Kubernetes on both http and https
但是看起来他们正在使用使用 .key 和 .crt 的 .Net 5。我在使用 .pfx 文件的 .Net 3.1 上。
解决方法
与其使用 https 部署您的 .NET 核心容器,您应该使用 http 部署它并使用 nginx-ingress 来提供 https,如此处所述https://cert-manager.io/docs/tutorials/acme/ingress/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。