====== Контейнеризация (Docker + PostgreSQL) ====== ===== Д/З ===== ==== Reading assignment (прочитать и понять) ==== * Docker: [[https://docs.docker.com/get-started/docker-concepts/the-basics/what-is-a-container|What is a container?]] * Docker: [[https://docs.docker.com/get-started/docker-concepts/the-basics/what-is-an-image|What is an image?]] * Docker: [[https://docs.docker.com/get-started/docker-concepts/the-basics/what-is-a-registry/|What is a registry?]] * Docker: [[https://docs.docker.com/get-started/docker-concepts/the-basics/what-is-docker-compose|What is Docker Compose?]] * Docker: [[https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports|Publishing and exposing ports]] * Docker: [[https://docs.docker.com/get-started/docker-concepts/running-containers/persisting-container-data|Persisting container data]] * Docker Hub: [[https://hub.docker.com/_/postgres|postgres - Official Image]] * pip: [[https://pypi.org/project/pg8000|pg8000]] — a pure-Python PostgreSQL driver * PostgreSQL: [[https://www.postgresql.org/docs/current/app-psql.html|psql]] * PostgreSQL: [[https://www.postgresql.org/docs/current/app-pg-isready.html|pg_isready]] ==== Практика (для зачета) ==== Цели: - Внести в Pizza Bot изменения для работы с PostgreSQL - Теперь бот должен работать с PostgreSQL вместо Sqlite - Написать ''docker-compose.yml'' конфигурацию для PostgreSQL - База данных PostgreSQL должна сохранятся при перезапуска Docker - Поработать с Docker Desktop, docker (CLI), psql, pg_isready. Реализуйте данные цели. Можно пользоваться примером, показанным на лекции. ===Процесс сдачи=== - (студент): напишите в ТГ [[https://t.me/olegsklyarov|преподавателю]] **одно** сообщение, содержащее текст: - ''Для сдачи Д/з Docker + PostgreSQL'' - Ссылка на гит с исходным кодом бота - (преподаватель) проверяет наличие зеленой галочки на гитхабе, делает код ревью, при необходимости задает дополнительные вопросы. - (преподаватель) отправляет с ТГ личку студенту сообщение "ФИО ✅ 9️⃣" - (студент) заходит [[chat-bots:Таблица успеваемости|на страницу успеваемости]] и проверяет корректность своей успеваемости.