Azure WebApp容器重新启动问题

时间:2019-02-04 20:20:25

标签: azure docker azure-cloud-shell

我已经创建了一个运行grafana docker映像的网络应用

az group create --name grp-test-container-1 
                --location "West Europe"
az appservice plan create --name asp-test-container-1 
                          --resource-group grp-test-container-1 
                          --sku B1 
                          --is-linux
az webapp create --resource-group grp-test-container-1 
                 --plan asp-test-container-1 
                 --name app-test-container-1 
                 --deployment-container-image-name grafana/grafana:latest

然后我更新了appsettings以便将env变量传递给docker run命令

az webapp config appsettings set --name app-test-container-1 
                                 --settings GF_INSTALL_PLUGINS='grafana-azure-monitor-datasource' 
                                 --resource-group grp-test-container-1

然后我需要重新启动容器,以便在docker run命令中获取添加的env变量。

我尝试重新启动Web应用程序,停止/启动它,更改docker映像名称并保存在“容器设置”下。

enter image description here

有什么建议吗?

解决方案/错误

正如 Charles Xu 在他的回答中所说,要重新加载容器,您需要更改docker映像并保存,以使Web应用程序再次获取该映像并应用添加的env变量。

就我而言,我做了更改,然后查看了日志输出,但是日志从未更新过。我等了5-10分钟,仍然没有添加日志。.

但是当我访问该站点并浏览到由env变量安装的扩展程序时,我可以确定一切都已通过。

因此,总结:“容器设置”中的日志不可信任,进行更改时,这些更改可能不会显示在日志中。

2 个答案:

答案 0 :(得分:2)

您需要做的是将图像从grafana/grafana:latest更改为grafana/grafana,只需删除版本latest,然后单击下面的保存按钮。然后它将起作用。

enter image description here

enter image description here

答案 1 :(得分:0)

几天后,我刚与Azure Web应用程序/应用程序服务团队的支持工程师通电话。从字面上看。

因此,如果其他人在其应用程序服务方面遇到问题而无法响应重新启动,配置更改,docker映像更改等,则可以尝试以下操作:

在Azure门户中,导航到您的应用程序服务,然后导航到“配置”->“常规设置”,然后将“始终打开”设置设置为“打开”。此设置默认情况下设置为“关闭”,一段时间后未收到任何请求,将使应用程序服务进入“空闲状态”。

使应用程序服务退出此空闲状态的唯一方法是对其执行请求。在完成第一个请求之前,重新启动,配置更改,泊坞窗映像更改等将不起作用。将“始终打开”设置设置为“打开”将阻止应用程序服务进入此空闲状态,因此它将始终处于响应状态。

就成本而言,此设置更改不会产生任何影响。除非您试图将尽可能多的应用程序强制放入单个应用程序服务计划中,否则这些应用程序很少使用,因此处于空闲状态将不会使用您的应用程序服务计划总资源。