@savao
Python-программист

Как правильно настроить отправку файлов из контейнера напрямую через nginx?

В одном из моих проектов получилась такая ситуация:
У меня есть папка media/folder1/ содержащая файлы различные служебные и пользовательские папки. В ней есть папка media/folder1/folder_for_nginx/, в которой содержаться файлы которые надо отдавать пользователю напрямую через nginx.
Я добавил в репозиторий в папку media папку folder1 и в неё папку folder_for_nginx, в каждой из них лежит файл .gitignore с содержимым:
# Ignore everything in this directory
*
# Except this file
!.gitignore

Чтобы всё что добавляется в эти папки локально не шло в репозиторий во время push.
Так же были настроены docker-compose и nginx:
docker-compose.yml:
project_stage:
    ...
    volumes:
      - ./folder_for_nginx:/usr/src/api/media/folder1/folder_for_nginx
...
nginx_stage:
   ...
    volumes:
      - ./folder_for_nginx:/usr/src/folder_for_nginx
...


И настройки для nginx:

default.conf:
...
server {
    ...

    location /files/ {
        alias /usr/src/folder_for_nginx/;
        autoindex off;
    }
...

В итоге получилось:
- папка folder_for_nginx на хосте оказалась в корне проекта (для конфига docker-compose базовой является папка api в корне проекта)
А всё содержимое папки folder1 удаляется при каждом обновлении кода сервера.
Как это пофиксить, чтобы и папка была на своём месте, и nginx к ней имел доступ и файлы не удалялись?
  • Вопрос задан
  • 79 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы