Докер Nextcloud записывает содержимое на SD-карту **и** внешний диск

#docker #docker-compose #raspberry-pi4 #nextcloud

Вопрос:

Я установил Nextcloud в контейнер Docker на своем Raspberry Pi 4, и до сих пор он работает. В качестве носителя я использую внешний диск, который я подключил к контейнеру с помощью тома. В nextcloud я активировал поддержку внешнего диска и добавил том, который был ранее.

Когда я загружаю файлы в свой Nextcloud, я вижу, что файлы записываются на SD-карту и внешний диск, и, очевидно, это не так, как должно быть.

Я могу себе представить, что я просто кое-что забыл, так как я новичок в Docker и Linux в целом, так что не судите меня 🙂

Надеюсь, вы сможете мне помочь.

Это мой файл docker-compose:

 
services:

    nextcloud-db:
        image: "mariadb"
        container_name: "nextcloud-db"
        volumes:
            - "NCMariaDB:/var/lib/docker/volumes"
        environment:
            - MYSQL_ROOT_PASSWORD=***
            - MYSQL_DATABASE=***
            - MYSQL_USER=***
            - MYSQL_PASSWORD=***
        restart: always
    nextcloud:
        image: "nextcloud"
        container_name: nextcloud
        restart: always
        ports:
        - 8080:80
        volumes: 
            - "/media/elementshdd/nextcloud:/media/nextcloud"
        depends_on:
            - "nextcloud-db"

volumes:
    NCMariaDB:

Edit:
The files are being stored (temporarily) on the SD Card while uploading, and after they're being copied to the external drive automatically. But it seems like they aren't being deleted from the SD Card after copying since the free storage doesn't increase.
 

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

1. Как выглядит ваш докер-файл или докер-композиция? Возможно, это как-то связано с отображением объема, которое вы используете.

2. Это части тома моего докера-составьте файл: тома: — «/media/elementshdd/nextcloud:/media/тома nextcloud: NCMariaDB: NCData:

3. Этой информации недостаточно. Почему бы не включить в вопрос файл fill docker-compose.yml?

4. Теперь я добавил файл docker-compose.

5. Ваша служба nextcloud-db — это просто контейнер базы данных MySQL. Но у вас есть сопоставление томов, указывающее на /var/lib/docker/тома в (!!) контейнере. Если вам нужна база данных MySQL на NCMariaDB на хосте, вам следует изменить ее на /var/lib/mysql. В сопоставлении томов Docker левая сторона»: «находится на хосте, а правая сторона»: «находится в самом контейнере.