Подождите, чтобы запустить стек докеров, пока файловая система не будет смонтирована

#docker #wait #volume #mount

Вопрос:

У меня проблема со стеком докеров nextcloud. Я запускаю fsck при каждой загрузке моей системы. Таким образом, том в стеке еще не смонтирован при запуске стека. Есть ли простой способ дождаться запуска стека, пока /srv/dev-disk-by-uuid-77365390-c57e-4b8a-846f-42fa099bf411/ не будет смонтирован??

Моя стопка выглядит так…

 version: "2"
services:

nextcloud:
image: linuxserver/nextcloud
container_name: nextcloud
networks:
  - homeserver
environment:
  - PUID=1000
  - PGID=1000
  - TZ=Europe/Berlin
volumes:
  - /srv/dev-disk-by-uuid-77365390-c57e-4b8a-846f-42fa099bf411/docker/appdata/nextcloud/config:/config
  - /srv/dev-disk-by-uuid-77365390-c57e-4b8a-846f-42fa099bf411/docker/appdata/nextcloud/data:/data
depends_on:
  - mariadb
restart: unless-stopped

mariadb:
image: yobasystems/alpine-mariadb:armhf
container_name: mariadb
networks:
  - homeserver
environment:
  - PUID=1000
  - PGID=1000
  - TZ=Europe/Berlin
  - MYSQL_DATABASE=nextcloud
  - MYSQL_USER=nextcloud
  - MYSQL_PASSWORD=xxx
  - MYSQL_ROOT_PASSWORD=
volumes:
  - /srv/dev-disk-by-uuid-77365390-c57e-4b8a-846f-42fa099bf411/docker/appdata/mariadb/logs:/var/lib/mysql/mysql-bin
  - /srv/dev-disk-by-uuid-77365390-c57e-4b8a-846f-42fa099bf411/docker/appdata/mariadb/mysql/_data:/var/lib/mysql
restart: unless-stopped

phpmyadmin:
container_name: phpmyadmin-nextcloud
image: phpmyadmin
networks:
  - homeserver
restart: unless-stopped
environment:
  - PMA_HOST=172.18.0.2
  - PMA_PORT=3306
ports:
  - 8182:80
  
networks:
homeserver:
  external:
    name: homeserver
 

Большое спасибо за вашу помощь!!

Комментарии:

1. Самым простым решением, вероятно, будет добавление зависимости к службе docker в systemd для ожидания службы, выполняющей эти монтирования файловой системы.