Docker Azure webapp 的卷行为

Docker volumes behavior with azure webapp

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

azure webapp 是否不支持此功能,或者是否有某些我缺少但需要启用的设置? 我不是在谈论安装 filesystem/storage 帐户 here.

那不行。另一种方法是启用 Persistent Storage 并创建一个 Docker Compose 文件,即使您只有一个容器,您也可以在其中指定一个卷。然后使用 multi-container 选项并上传 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}环境变量将指向VM的/home文件夹运行 你的容器。用它来映射文件夹和卷。

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