微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法加载应用程序或执行命令“Microsoft.AspNet.Server.Kestrel” 可用命令:web

试图在Docker上运行简单的webapi应用程序(部署到Ubuntu Linux)我试图运行容器时遇到奇怪的exception:

无法加载应用程序或执行命令“Microsoft.AspNet.Server.Kestrel”。 可用命令:web。

到目前为止我做了什么。我已经把我的aspnet5解决scheme上传到Linux机器并运行发布:dnu publish –framework dnxcore50 –configuration Release –wwwroot“wwwroot”–wwwroot-out“wwwroot”–iis-命令“web”

一个完成docker构build创build一个图像,然后尝试运行它:sudo docker运行-t -d -p 8000:8000 myimagename

看着docker日志我看到上面显示的exception。

我login到容器看到文件夹结构,都看起来不错。 Verifyid在容器中的dnx和我用来构build解决scheme的是一样的。

使用最新的可用的microsoft / aspnet图像 – rc1-update1

有任何想法吗??

我可以通过在入口点之前在Dockerfile中运行这个命令来得到它的工作:

ADD ./app #SOLUTION workdir path_to_your_sources RUN dnu restore ######### workdir /app/approot ENTRYPOINT "./web"

虽然错误消息表明它期待命令“Microsoft.AspNet.server.Kestrel”中

"commands": { "web": "Microsoft.AspNet.server.Kestrel" }

这将是非常奇怪的,但要检查是否是这样的话,我试过:

"commands": { "web": "Microsoft.AspNet.server.Kestrel","Microsoft.AspNet.server.Kestrel": "Microsoft.AspNet.server.Kestrel" }

它没有工作。 dnu restore修复了它,不知道与错误信息的关系呢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐