记一次笨比事件,.NET5 api通过docker部署后始终无法访问

折腾了一晚上,各种端口映射、去掉https。。在window和linux下都部署了,两者都无法通过http://xxxx:pp/swagger/index.html或http://xxxx:pp 访问。

但是docker logs xxx 日志是可以看到程序正常运行的。。

最后发现.NET5 勾选了openapi后生成的swagger代码段有这样一个条件

if (env.IsDevelopment())

代表只在开发调试时生效。。。所以为什么访问不了真相大白了呀。。直接访问接口是可以的。

发现自己太粗心了,这点小问题就搞了一晚上,公司用core2.1 3.1用习惯了,没发现.NET5自带的swagger是这样写的。

 

相关文章

Docker是什么Docker是 Docker.Inc 公司开源的一个基于 LXC技...
本文为原创,原始地址为:http://www.cnblogs.com/fengzheng...
镜像操作列出镜像:$ sudo docker imagesREPOSITORY TAG IMA...
本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p...
在 Docker 中,如果你修改了一个容器的内容并希望将这些更改...
在Docker中,--privileged 参数给予容器内的进程几乎相同的权...