Нужно помочь доделать небольшой проект для Яндекс Практикум с Docker
1 000 руб. за проект
Нужно помочь доделать небольшой финальный проект на Яндекс Практикуме. Я почти всё сделал из описанного ниже тз, у меня полностью рабочее CI/CD деплой с отправкой сообщения, но локальные тесты не проходят (3 ошибки) и не отображается сам проект по хосту.
Вот само задание
В финальном задании спринта вам предстоит:
При пуше в ветку main:
Напишите в файле .github/workflows/main.yml workflow, который будет:
Вот само задание
В финальном задании спринта вам предстоит:
- настроить запуск проекта Kittygram в контейнерах;
- настроить автоматическое тестирование и деплой этого проекта на удалённый сервер.
При пуше в ветку main:
- проект должен тестироваться,
- в случае успешного прохождения тестов образы должны обновляться на Docker Hub,
- на сервере должны быть запущены контейнеры из обновлённых образов.
- Напишите Dockerfile для образа kittygram_backend. За основу можно взять Dockerfile для бэкенда Taski.
- Для создания образа kittygram_gateway используйте готовый Dockerfile из папки nginx/.
- Обновите конфигурацию Nginx и добавьте проксирование запросов для API и админки.
- Для создания контейнера фронтенда используйте готовый Dockerfile из папки frontend/.
- Настройте совместную работу контейнеров backend и db:
- Настройте Django для работы с PostgreSQL.
- Создайте файл .env для PostgreSQL и контейнера backend: впишите в него переменные для инициализации БД и связи с ней.
- Допишите docker-compose.yml, заготовленный в репозитории. В нём уже есть описание контейнеров, но его нужно расширить:
- добавьте volume для статических файлов админки и фронтенда,
- добавьте volume для хранения файлов, загруженных пользователями,
- подключите файл .env к контейнерам db и backend.
Напишите в файле .github/workflows/main.yml workflow, который будет:
- проверять код бэкенда в репозитории на соответствие PEP8;
- запускать тесты для фронтенда и бэкенда (тесты уже написаны);
- собирать образы проекта и отправлять их на Docker Hub (замените username на ваш логин на Docker Hub):
- username/kittygram_backend,
- username/kittygram_frontend,
- username/kittygram_gateway.
- обновлять образы на сервере и перезапускать приложение при помощи Docker Compose;
- выполнять команды для сборки статики в приложении бэкенда, переносить статику в volume; выполнять миграции;
- извещать вас в Telegram об успешном завершении деплоя.
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.