Skip to content
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

Merged
merged 9 commits into from
Oct 21, 2023

Conversation

ArtemKAF
Copy link
Collaborator

  • добавил в процесс деплоя сборку фронтенда;
  • изменены названия подключаемых томов, так как имя static вызывает задвоение части "static/" в пути по которому nginx ищет файлы в адресе которых присутствует static;
  • пофиксил использование обновленного docker-compose.production.yml при деплое проекта;
  • в настройки nginx.conf внес изменения, чтобы не нужны были директивы location для статики (локально в докер контейнерах работает/на проде нужно тестировать).

@ArtemKAF ArtemKAF changed the base branch from main to develop October 19, 2023 10:45
@@ -27,27 +27,24 @@ services:
image: 1yunker/volunteers_backend
env_file: .env
volumes:
- static:/backend_static
- media:/media
Copy link
Collaborator

@1yunker 1yunker Oct 19, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Поясни зачем настройки media совсем убрал, а не исправил на media_data:/media?

Copy link
Collaborator Author

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;
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Тоже не понимаю зачем затирать эти настройки...

Copy link
Collaborator Author

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 /;
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

И эти настройки тоже зачем удалены?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

А вот тут я тоже погорячился убрать и не вернуть прежде чем обсудить где именно расположить папку медиа относительно всей статики вцелом.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Предлагаю в settings изменить MEDIA_ROOT = '/media'

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Да, я тоже к этому пришел и внес эти изменения в свой ПР.

@ArtemKAF
Copy link
Collaborator Author

  • добавил настройки для подключения тома media_data. Работу проверил в докер контейнерах.
  • пофиксил ci.yml (пропустил установку пакета isort) зато теперь он находит кучу проблем с импортами :)

@ArtemKAF
Copy link
Collaborator Author

  • изменил способ доставки на прод контейнера с nginx (сначала собирается из репозитория включая настройки для nginx, а на проде вытягивается готовый образ из Docker Hub)

- static:/backend_static
- media:/media
- static_data:/backend_static
- media_data:/app/media
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Через /app/media пробовал, почему-то не работает так. В корне есть /media по умолчанию в контейнере, он почему-то на нее ссылаться начинает.

Copy link
Collaborator Author

@ArtemKAF ArtemKAF Oct 20, 2023

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

@MrRuzal MrRuzal self-requested a review October 21, 2023 12:20
@MrRuzal MrRuzal merged commit 8229efe into develop Oct 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants