Окружение судьи
Каждое Решение запускается в отдельной виртуальной машине, созданной из единого базового образа и уничтожаемой после оценки. Окружение не содержит данных других Решений, ключей доступа и учётных записей Организатора (Положение, пункт 6.4). Ниже приведены характеристики окружения, позволяющие воспроизвести его и проверить инструкцию README.md до Заморозки.
Характеристики
| Архитектура | amd64 (x86-64), виртуальная машина KVM |
| Процессор | 8 vCPU |
| Оперативная память | 16 ГиБ |
| Диск | 60 ГБ, из них около 55 ГБ свободно |
| Операционная система | Ubuntu 24.04.5 LTS (официальный cloud image), ядро 6.8 |
| Docker | Docker Engine 29.1.3, Docker Compose 2.40.3, Buildx 0.30.1 (из репозитория Ubuntu) |
| Предустановленное ПО | только состав cloud image (git, curl, python3 и др.) и Docker. Утилита make отсутствует; необходимое ПО устанавливается инструкцией README.md (например, sudo apt install -y make) |
| Пользователь | judge, член группы docker, sudo без пароля |
| Ограничение времени запуска | 75 минут |
Сеть
- Доступ в интернет предоставляется: инструкция может загружать образы, пакеты, наборы данных и модели.
- Доступ к локальной сети, хост-машине, другим виртуальным машинам и частным диапазонам адресов закрыт. IPv6 отключён.
- Порты, открываемые Решением, доступны изнутри виртуальной машины. Для собственных сервисов используйте адреса
localhostили127.0.0.1.
Пользовательский интерфейс
Интерфейс Решения открывается в браузере с той же сетевой политикой, что и у Решения:
- адреса вида
http://localhost:ПОРТоткрываются так же, как на локальном компьютере; - внешние ресурсы (скрипты, стили, шрифты, картографические подложки, внешние API) доступны; при их недоступности во время оценки интерфейс может работать некорректно, поэтому критичные файлы рекомендуется размещать в составе Решения;
- WebGL, в том числе сцены Unity, поддерживается; рендеринг выполняется без графического ускорителя, поэтому объём трёхмерных сцен рекомендуется минимизировать.
Проверка инструкции
Для проверки подойдёт любой компьютер или виртуальная машина с Ubuntu 24.04 amd64, 8 CPU, 16 ГБ оперативной памяти и 60 ГБ дискового пространства, с установленными Docker Engine 29.1 и Docker Compose 2.40 и без дополнительного ПО. Пример создания такой виртуальной машины:
multipass launch 24.04 --cpus 8 --memory 16G --disk 60G --name judge
multipass shell judge
sudo apt-get update && sudo apt-get install -y docker.io docker-compose-v2 docker-buildx
sudo usermod -aG docker "$USER" && newgrp docker
Затем склонируйте Репозиторий команды и выполните инструкцию README.md дословно. Всё, что работает только благодаря настройкам вашего компьютера (установленные программы, переменные окружения, загруженные образы, файлы вне репозитория), в Окружении судьи работать не будет.