2

我已经按照教程建立了一个.net核心Web应用程序到docker镜像,发布到一个蔚蓝的容器注册表,然后我安装了我的VSTS Release模板来部署容器到应用程序服务。Azure应用程序服务码头容器'服务不可用'

这一切似乎工作,我可以在容器注册表中查看我的图像,并且部署看起来成功 - 但是当导航到应用服务站点时,我得到的只是HTTP 503 - 服务不可用。

应用服务已启动,我可以通过bash在我的文件系统中看到部署 - 所以我想知道如果我错过了什么吗?

我没有在我的任何模板中的“启动”命令,我想知道这是否可以吗?

该网站完全适用于VS2017,包括通过docker进行调试,所以它真的只是一个例子...我如何让App Service实际加载和执行映像?

谢谢!

编辑

而且这一点,我有访问哪些要求“形象操作系统‘窗口’不能在该平台上使用”泊坞窗诊断日志。

我的基本映像是microsoft/aspnetcore:2.0映像,它在我的开发环境中的Linux容器上运行得非常好......但似乎无法在Linux App Service中工作?

aspnetcore:2.0基础镜像不适合linux应用服务吗?

+0

此外,我有权访问诊断日志,声称“图像操作系统”窗口“不能在此平台上使用。” 我的基本映像是microsoft/aspnetcore:2.0映像,它运行得非常好我的Linux容器在我的开发环境中......但似乎无法在Linux应用服务中工作? – watdo

+0

你能够分享您正在关注的教程链接吗? – juvchan

+0

我跟着各种各样的旅程一起开始,但开始我的构建和发布模板我使用了Azure门户连续传输刀片,然后修改为使用Azure容器注册表。 – watdo

回答

4

我最终解决了这个星期,希望答案能够帮助别人。

当使用VSTS托管构建代理来生成运行在docker base microsoft/aspnetcore:latest的图像时 - 除非使用(Linux Preview)托管构建代理,否则将生成一个windows容器,该容器不会在Linux应用服务。

一旦我切换到使用托管linux构建代理,容器成功加载,我的问题已解决。

+1

这对于其他人来说可以在Kudu中找到docker日志:https://YOURSITE.scm。 azurewebsites.net并单击“docker logs”。这会打开一个JS ON文件;复制粘贴JSON文件中的链接。 – lionello

+0

@lionello非常感谢您的留言。它拯救了我的一天! – Zouzias

+0

@watdo因此,如果我的VSTS正在构建ASP.NET“microsoft/aspnet”图像,它不适用于容器的Azure Web应用程序,对不对?那我应该用什么? – Hasan