azure - Docker 卷与 azure webapp 的行为

标签 azure dockerfile azure-web-app-service volumes

在 dockerfile 中指定 docker 卷时,docker 会在容器启动时创建一个卷。正如预期的那样,当在预期路径登录到容器时,定义的目录就在那里。 但是,当在适用于 Linux 的 Azure Webapp 中使用相同的镜像时,登录到容器时,预期的路径和文件不存在。

azure webapp 是否不支持此功能,或者是否有一些我缺少的设置需要启用? 我不是在谈论安装文件系统/存储帐户,如文档 here 所示。 .

最佳答案

那是行不通的。另一种方法是启用持久存储并创建Docker Compose文件,您可以在其中指定卷,即使您只有一个容器也是如此。然后,您可以使用多容器选项并上传 YAML 文件。

通过设置应用程序设置WEBSITES_ENABLE_APP_SERVICE_STORAGE = TRUE来启用持久存储。您可以从门户或使用 CLI 来执行此操作。

az webapp config appsettings set -g myResourceGroup -n <app-name> --settings WEBSITES_ENABLE_APP_SERVICE_STORAGE=TRUE

${WEBAPP_STORAGE_HOME} 环境变量将指向运行容器的虚拟机的 /home 文件夹。用它来映射带有卷的文件夹。

version: '3.3'
services:
   wordpress:
     image: myimage
     volumes:
      - ${WEBAPP_STORAGE_HOME}/site/wwwroot:/var/www/html
     ports:
       - "80:80"
     restart: always

关于azure - Docker 卷与 azure webapp 的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71922613/

相关文章:

c# - Web api 上的 Azure 预热不起作用

docker - Docker 构建过程中的 AWS 凭证

docker - 排除 .dockerignore 中的文件夹

azure - 从 Azure Web 应用程序中删除部署凭据

azure - 关闭应用程序见解采样

c# - 我们如何在没有存储容器名称、StorageAccountName 和 StorageAccountKey 这些信息的情况下从 Azure 事件中心接收事件

azure - 我想更改 Microsoft Azure 虚拟机大小而不丢失数据

docker - 如何在 docker 构建期间设置环境变量

azure - 您可以删除 Microsoft.Web/certificates 吗?

azure - 如何根据文件名运行资源事件发生时?