如何在运行 .net Core 模板的 Windows docker 容器和 Windows 主机中安装开发证书?

2024-05-20

我已使用 Visual Studio 模板添加 Docker 支持,并且用户机密具有证书的密码,并且用户机密和证书作为卷安装在docker-compose.override.yml:

volumes:
      - ${APPDATA}/ASP.NET/Https:C:\Users\ContainerUser\AppData\Roaming\ASP.NET\Https:ro
      - ${APPDATA}/Microsoft/UserSecrets:C:\Users\ContainerUser\AppData\Roaming\Microsoft\UserSecrets:ro

我什至连接到容器以验证证书是否位于 Https 文件夹中。由于某种原因它没有被安装。运行应用程序会引发错误,指出证书存储中不存在开发证书。我应该如何安装它?我是否需要进行设置才能使其自动安装在容器中?

确切的错误消息:

System.InvalidOperationException:“无法配置 HTTPS 端点。 未指定服务器证书,默认开发者 找不到证书。

我可以按照错误说明创建证书并将其添加到容器中:

dotnet dev-certs https
dotnet dev-certs https --trust

但是,.net sdk 并未安装在最终容器中,仅安装在 .net core 运行时中。


不确定这是否对任何人有帮助,但我最近遇到了这个问题,并找到了一种方法来纠正我的情况下的问题。这不是永久修复,只是让我现在可以在本地进行开发。

In the docker-compose.override.yml文件我改变了ASPNETCORE_ENVIRONMENT from 生产 to 发展.

当我发布直播时,我只需要记住恢复它即可。

注意:我是 docker 新手,所以别着急。请随意编辑此答案以供任何人改进。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在运行 .net Core 模板的 Windows docker 容器和 Windows 主机中安装开发证书? 的相关文章

随机推荐