Найти в Дзене
Computer Pro

Twitter-clone на FastAPI. Упаковываем приложение, Nginx, Postgres в контейнеры и запускаем через docker compose. Часть 8

Docker compose позволяет объединить три контейнера в одну сеть, это как бы получается три компьютера на Linux на одном FatAPI, другом Nginx, на третьем Postgresql объединенные маршрутизатором под названием docker-compose. Предыдущая статья на эту тему: Данное приложение уже собрано с помощью docker-compose и успешно функционирует. Вот демонстрация работы. Хотя я там забыл продемонстрировать как работает переключение между пользователями. Итак, я почти все выходные возился и не мог понять почему у меня не получается раздавать статику (картинки, которые загружаются вместе с твитом). А ларчик просто открывался... Оказалось нужно указать в docker-compose.yaml файле volumes не только для контейнера nginx в котором хранится статика приложения от фронтенда и настройки nginx.conf. Но и volumes - статику указать в контейнере FastAPI приложения - app. И только тогда, у меня стали работать сохранение и отдача картинок. Конфиг nginx.conf А так же в самом приложении есть константы, по которым опре

Docker compose позволяет объединить три контейнера в одну сеть, это как бы получается три компьютера на Linux на одном FatAPI, другом Nginx, на третьем Postgresql объединенные маршрутизатором под названием docker-compose.

Предыдущая статья на эту тему:

Данное приложение уже собрано с помощью docker-compose и успешно функционирует. Вот демонстрация работы. Хотя я там забыл продемонстрировать как работает переключение между пользователями.

Итак, я почти все выходные возился и не мог понять почему у меня не получается раздавать статику (картинки, которые загружаются вместе с твитом).

А ларчик просто открывался...

-2
-3

Оказалось нужно указать в docker-compose.yaml файле volumes не только для контейнера nginx в котором хранится статика приложения от фронтенда и настройки nginx.conf. Но и volumes - статику указать в контейнере FastAPI приложения - app.

И только тогда, у меня стали работать сохранение и отдача картинок.

Конфиг nginx.conf

-4

А так же в самом приложении есть константы, по которым определяется директория для сохранения картинок в файле config.py:

-5

Вот такая коротенькая статейка получилась...

На этом у меня всё. Всем пока!