Docker - медиа-том не сохраняет данные

У меня есть проект Django, в котором есть media том, содержащий все загружаемые файлы. Некоторые из этих файлов являются экземплярами модели Script. Однако, должно быть что-то в моем определении/использовании тома, так как я получаю No such file or directory: 'path_of_the_file' ошибку при попытке доступа к моим файлам.

Я пробовал разные подходы и обнаружил, что при создании экземпляра Script через панель администратора файл был доступен до следующего перезапуска контейнера.

Я пытался проверить, что находится внутри моего тома, используя этот ответ , но я получаю The specified path does not exist при попытке cd в точку монтирования. Вот результат проверки :

C:\Users\stephane.bernardelli\Documents\TestApp\src>docker volume inspect testapp_media
[
    {
        "CreatedAt": "2022-07-21T14:34:17Z",
        "Driver": "local",
        "Labels": {
            "com.docker.compose.project": "testapp",
            "com.docker.compose.version": "2.6.1",
            "com.docker.compose.volume": "media"
        },
        "Mountpoint": "/var/lib/docker/volumes/testapp_media/_data",
        "Name": "testapp_media",
        "Options": null,
        "Scope": "local"
    }
]

А вот мой docker-compose.yml:

version: '3.8'

services:
  rabbitmq3:
    image: rabbitmq:3-alpine
    ports:
      - 5672:5672
    networks:
      - main

  postgres:
    container_name: postgres
    hostname: postgres
    image: postgres:latest
    env_file:
      - env
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - POSTGRES_DB=Scripts Application
    networks:
      - main
    ports:
      - "5432:5432"
    restart: on-failure
    volumes:
      - postgresql-data:/var/lib/postgresql/data

  django_gunicorn:
    volumes:
      - static:/static
      - media:/media
    env_file:
      - env
    build:
      context: .
    ports: 
      - "8000:8000"
    command: sh -c "python manage.py migrate && python manage.py collectstatic --no-input && gunicorn main.wsgi:application --bind 0.0.0.0:8000"
    depends_on:
      - postgres
    networks:
      - main

  nginx:
    build: ./nginx
    volumes:
      - static:/static
      - media:/media
    ports:
      - "80:80"
    depends_on:
      - django_gunicorn
    networks:
      - main

  celery:
    restart: always
    build:
      context: .
    command: celery -A main worker -P eventlet -c 100 -l INFO
    env_file:
      - env
    depends_on:
      - rabbitmq3
      - django_gunicorn
      - postgres
    networks:
      - main

networks:
  main:

volumes:
  postgresql-data:
  static:
  media:

Я совершенно не понимаю, что я делаю неправильно, поэтому буду рад, если кто-нибудь сможет меня направить, заранее спасибо!

Вернуться на верх