-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactored the project building and deploying procedure. Added frontend #43
Conversation
ArtemKAF
commented
Oct 19, 2023
- добавил в процесс деплоя сборку фронтенда;
- изменены названия подключаемых томов, так как имя static вызывает задвоение части "static/" в пути по которому nginx ищет файлы в адресе которых присутствует static;
- пофиксил использование обновленного docker-compose.production.yml при деплое проекта;
- в настройки nginx.conf внес изменения, чтобы не нужны были директивы location для статики (локально в докер контейнерах работает/на проде нужно тестировать).
@@ -27,27 +27,24 @@ services: | |||
image: 1yunker/volunteers_backend | |||
env_file: .env | |||
volumes: | |||
- static:/backend_static | |||
- media:/media |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Поясни зачем настройки media совсем убрал, а не исправил на media_data:/media?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Удалял, так как был "сюрприз" с той строчкой, которую ты прописал, а корректную версию прописать забыл. Было бы не плохо созвониться обсудить, там еще есть пара "моментов", которые на счет медиа хотел прояснить.
location /admin/ { | ||
proxy_set_header Host $http_host; | ||
proxy_pass http://backend:8000/admin/; | ||
} | ||
location /static/ { | ||
root /static; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Тоже не понимаю зачем затирать эти настройки...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Здесь эти строчки становятся не нужными из-за изменения настроек монтирования тома static_data и переноса настройки root вне секции location / {}
} | ||
location /media/ { | ||
root /; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
И эти настройки тоже зачем удалены?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А вот тут я тоже погорячился убрать и не вернуть прежде чем обсудить где именно расположить папку медиа относительно всей статики вцелом.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Предлагаю в settings изменить MEDIA_ROOT = '/media'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Да, я тоже к этому пришел и внес эти изменения в свой ПР.
|
|
- static:/backend_static | ||
- media:/media | ||
- static_data:/backend_static | ||
- media_data:/app/media |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Через /app/media пробовал, почему-то не работает так. В корне есть /media по умолчанию в контейнере, он почему-то на нее ссылаться начинает.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Вот из-за того, что в контейнер вольюм подключается по пути /media, мы и получимаем в итоге ссылки на подключаемое оборудование в ОС контейнера (особенность линукса, у которого /media - это директория куда автоматом монтируются подключаемые носители flopy, cdrom и прочее). Это и есть "сюрприз". Поэтому и подключил /app/media, так как при сборке контейнера бэкэнд складывается в директорию /app.
А при настройке MEDIA_ROOT = BASE_DIR / 'media' бэкэнд и будет сохранять медиа по пути /app/media