[x] сделать docker-compose.yaml файл, в котором будет содержаться три компоненты:
контейнер с приложением. В идеале - там должен быть один запускаемый файл (см. pyinstaller) и всё. Пока что хватит простого запуска main.py и копирования всего кода в контейнер, но в перспективе хочется упаковать это всё в один запускаемый файл.
контейнер с redis. В идеале redis должен существовать отдельно (так же, как Postgres), но пока что это не является первый приоритетом и можно отнести к срезанным углам.
контейнер с nginx. Он должен принимать запросы на порту 443 и те пути, что имеют в себе префикс /api переадресовывать в контейнер с основным приложением (открытым на порту 8080).
[x] сделать отдельную задачу в CI которая будет собирать контейнер с приложением и пушить его как latest версию в Container registry GitHub'а.
[x] Сделать эту задачу запускаемой ручным образом (релиз) и добавить в неё раскатку на тестовый сервер
План следующий:
docker-compose.yaml
файл, в котором будет содержаться три компоненты: