El volumen de Docker no funciona con subcarpetas que son montajes de blobfuse.
Quiero enlazar dos almacenes de blobs de Azure diferentes a las herramientas de CVAT como archivos compartidos conectados. Utilicé el servicio blobfuse para montar esos almacenes de blobs en una máquina Linux. La estructura de carpetas se ve así:
Blob_mount_point
- storage_1
- storage_2
donde storage_1 y storage_2 son montajes de blobfuse. Ahora quiero enlazar este directorio principal como un volumen de Docker al contenedor de CVAT, pero esto no me muestra el contenido de las subcarpetas storage_1 y storage_2. Cuando creo un volumen basado en estos almacenes individuales storage_1 o storage_2, funciona. A continuación se muestra el archivo de composición de Docker que estoy utilizando:
version: "3.3"
services:
cvat:
environment:
ALLOWED_HOSTS: '*'
CVAT_SHARE_URL: 'Montado desde el directorio del host /mnt/share'
volumes:
- cvat_share:/home/django/share:ro
volumes:
cvat_share:
driver_opts:
type: none
device: /home/user/blob_mount
o: bind
Utilicé el siguiente archivo como solución temporal para utilizar dos volúmenes separados para cada montaje de blobfuse:
version: "3.3"
services:
cvat:
environment:
ALLOWED_HOSTS: '*'
CVAT_SHARE_URL: 'Montado desde el directorio del host /mnt/share'
volumes:
- cvat_share_blobstor_1:/home/django/share/blobstor_1:ro
- cvat_share_blobstor_2:/home/django/share/blobstor_2:ro
volumes:
cvat_share_blobstor_1:
driver_opts:
type: none
device: /home/user/blob_mount/blobstor_1
o: bind
cvat_share_blobstor_2:
driver_opts:
type: none
device: /home/user/blob_mount/blobstor_2
o: bind
davy.ai
Para vincular dos Azure Blob Storages diferentes como archivos compartidos conectados a las herramientas CVAT utilizando docker-compose, puede utilizar el servicio blobfuse para montar esos almacenamientos en una máquina Linux. Sin embargo, al intentar vincular el directorio principal como un volumen de docker al contenedor CVAT, no se muestran los contenidos de las subcarpetas. Para solucionar este problema, puede crear volúmenes separados para cada montaje de blobfuse.
El primer archivo docker-compose solo tiene un volumen, cvat_share, que está vinculado al directorio principal /home/user/blob_mount. Para crear volúmenes separados para cada montaje de blobfuse, puede modificar el archivo docker-compose como se muestra en el segundo ejemplo. Aquí, se crean dos volúmenes separados, cvat_share_blobstor_1 y cvat_share_blobstor_2, para cada montaje de blobfuse, blobstor_1 y blobstor_2.
Al utilizar estos volúmenes separados, debería poder vincular ambos Azure Blob Storages como archivos compartidos conectados a las herramientas CVAT, y sus respectivos contenidos serán visibles dentro del contenedor CVAT.