Перейти к основному содержимому

Запуск практики

Практика работает целиком на вашей машине: браузер, Postgres и проверки — всё локально, интернет после скачивания образа не нужен.

Что нужно

Docker с docker compose. Больше ничего: Python, Node и клиент Postgres ставить не надо.

в каталоге практики
docker compose up

Открыть localhost:8766. Первый запуск дольше — образ собирается и накатывается схема базы.

Слева задания по темам с прогрессом и поиском; справа условие, редактор и панель результата.
приложение студентаСлева задания по темам с прогрессом и поиском; справа условие, редактор и панель результата.

Две базы, и это важно

БазаЧто в нейКто её меняет
живаяваши эксперименты: любые SELECT, INSERT, CREATE, загруженные примеры данныхвы, кнопкой «Выполнить»
проверочнаячистая копия схемы, куда наливаются варианты данных заданиятолько проверка, автоматически

Поэтому сломать себе проверку экспериментами невозможно: «Проверить решение» не смотрит на живую базу вообще. И наоборот — то, что запрос «отработал» в живой базе с одним набором строк, ещё не значит, что задание решено.

Кнопка «Сбросить базу» возвращает живую базу к пустой схеме. Решения при этом не трогаются.

Папка solutions/

Рядом с docker-compose.yml создаётся папка solutions/ — по файлу на задание:

solutions/
t01_active_shops_with_seats.sql
t02_espresso_available.sql
.status.json что и когда проходило проверку
.history/ история запросов и закладки, в git не попадает

Это и есть ваша сдача: коммитьте solutions/ в свой репозиторий. Раннер сам дописывает .history/ в solutions/.gitignore, чтобы черновики не попали в коммит. Как проверяет преподаватель

Обновление практики

Практику раздаёт преподаватель — папкой пака, смонтированной в контейнер как /pack. Когда пак меняется, достаточно перезапустить раннер:

docker compose up -d --force-recreate runner

Данные живой базы переживают перезапуск: они лежат в томе pgdata. Ваши решения тоже — они на диске рядом, а не в контейнере.

Оформление курса

Если преподаватель положил в пак тему, приложение возьмёт из неё цвета, шрифты, логотип и название курса. Светлую или тёмную схему выбираете вы кнопкой в списке заданий — если тема не зафиксировала одну из них. Посмотреть оформление по умолчанию: localhost:8766/?theme=off.