为什么我不能在 docker-compose 中使用 azure 文件共享来将 mongodb 数据存储在 Azure 容器实例中?

Why can't I use azure file share in my docker-compose to store mongodb data in Azure Container Instance?

使用 docker ACI 上下文时,以下 docker-compose 文件失败。 mongodb 容器不断重启。

version: "3.9"

services:
  mongodb:
    image: mongo:5.0.6
    env_file: mongo.env
    environment:
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=changeit
    ports:
      - 27017
    volumes:
      - dbdata:/data/db

volumes:
  dbdata:
    driver: azure_file
    driver_opts:
      share_name: mongodb-data
      storage_account_name: kpncoqyuxumoetuftz

如果我不使用 azure_file 存储,它将 运行 正常(但当然数据不会持久)

我不确定为什么我不能挂载到默认目录 /data/db 但是为了让它工作我必须挂载到一个不同的目录然后用带参数的命令替换默认命令.

工作版本如下:

version: "3.9"

services:
  mongodb:
    image: mongo:5.0.6
    command: ["mongod", "--dbpath=/dbdata"]
    environment:
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=changeit
    ports:
      - 27017
    volumes:
      - dbdata:/dbdata

volumes:
  dbdata:
    driver: azure_file
    driver_opts:
      share_name: mongodb-data
      storage_account_name: kpncoqyuxumoetuftz