gpt4 book ai didi

Azure Web 应用程序在 docker-compose 中使用 WEBAPP_STORAGE_HOME 变量

转载 作者:行者123 更新时间:2023-12-02 22:52:33 26 4
gpt4 key购买 nike

我正在尝试设置一个网络应用程序,该应用程序通过文件共享到存储帐户来实现持久存储。

我遵循 Microsoft 文档中的各种指南,并且成功完成了大部分工作,我的应用程序具有持久存储。但现在,我想做的,是将卷映射到我的存储帐户。

我看到这个变量 ${WEBAPP_STORAGE_HOME} 可以在我的 docker-compose 中使用。

我的问题是,这个变量的值是多少? docs状态:

${WEBAPP_STORAGE_HOME} is an environment variable in App Service that is mapped to persistent storage for your app.

我觉得这有点含糊。它是否知道自动映射我的路径映射?如果我有多个路径映射怎么办?我应该在配置边栏选项卡的应用程序设置中设置该值吗?如果是这样,我需要指定什么,安装路径?

除此之外,我看到它的用法如下:

version: '3.3'

services:
wordpress:
image: mcr.microsoft.com/azuredocs/multicontainerwordpress
volumes:
- ${WEBAPP_STORAGE_HOME}/site/wwwroot:/var/www/html
ports:
- "8000:80"
restart: always

我在 docker-compose 中与命名卷一起使用。我认为没有必要指定类似的东西?

更新在 @Jason Pan 的回答之后,我试着玩了一下这个坐骑。

我成功地使用以下 docker-compose 在应用服务上实现了持久存储:

# ... lines skipped for brevity
volumes:
- mysql-data:/var/lib/mysql

volumes:
mysql-data:
driver: local

但我想将数据保留在存储帐户上。我发现这可以通过以下方式实现:AppService/Configuration/Path Mappings

我的 Docker Compose

# ...
volumes:
- MyMountedPath:/var/lib/mysql

在这个 docker-compose 文件中,我有我的应用程序和 MySQL 镜像:准确地说是 mysql:8

我安装的路径如下:名称:MyMountedPath;安装路径:/usr/local/mysql;类型:Azure 文件...

我在日志中收到以下错误:

2021-04-08T11:02:06.790578922Z chown: changing ownership of '/var/lib/mysql/': Operation not permitted

2021-04-08T11:02:12.785079208Z 2021-04-08 11:02:12+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.23-1debian10 started.

由于它适用于第一种方法,我怀疑我的路径映射的定义方式存在一些问题。这让我产生了更多问题:

  • 我的装载路径是否需要存在于应用服务文件系统上?如果不是,我可以定义类似: /foo/bar 吗?
  • 如果我有一个挂载路径名称 MyMountedPath,我可以在 docker-compose 文件中指定类似的内容
volumes:
- MyMountedPath/foo:/something

基本上,在安装的路径中导航?

  • 我需要将此路径挂载到我的存储帐户的文件存储中吗?或者应用服务需要存储某些内容时会创建此路径吗?

最佳答案

Example:In the App Service properties, I mounted an Azure File Share and gave the name

MyExternalStorage

In the docker compose configuration I have to set
volumes:
- MyExternalStorage:/var/www/html/contao

感谢TeddyDubois29的回答,希望也能帮到你。

Web App Docker Compose Persistent Storage

如下所示

在应用服务上安装 Azure 文件时,会为安装选择一个名称。

此名称是配置文件中 Volumes 参数的引用。

示例:

在应用服务属性中,我安装了 Azure 文件共享并命名为 MyExternalStorage

在 docker compose 配置中我必须设置

数量:

MyExternalStorage:/var/www/html/contao

关于Azure Web 应用程序在 docker-compose 中使用 WEBAPP_STORAGE_HOME 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66993860/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com