Мы развернем нашу онлайн-систему выполнения кода в облаке Google.

Учебники из этой серии

  1. Разверните наш онлайн-исполнитель кода в Google Cloud (это руководство)
  2. Понимание API Judge0
  3. Создание внешнего интерфейса онлайн-редактора кода

Видеоурок

Демонстрация YouTube

Это то, что мы создадим

Введение

Judge0 — это надежная, масштабируемая и открытая система выполнения кода в Интернете, которую можно использовать для создания широкого спектра приложений, требующих функций выполнения кода в Интернете. Он используется на нескольких конкурентных платформах программирования, редакторах кода, платформах электронного обучения.

Мы развернем Judge0 в облаке Google для нашего онлайн-исполнения кода.

Шаг 1. Создайте проект в облаке Google и включите биллинг.

Шаг 2. Создайте экземпляр виртуальной машины из Compute Engine.

Что следует отметить

  1. Вы получаете бесплатные кредиты в размере 300 долларов при открытии счета.
  2. у вас есть посекундная тарификация, что очень круто, платите по мере использования.

Вы можете выбрать параметры по умолчанию и проверить наличие брандмауэра HTTP и HTTPS для входящего трафика.

Шаг 3: SSH к терминалу из браузера новой виртуальной машины

Шаг 4. Установите Docker и Docker Compose на виртуальную машину

Следуйте этой странице за подробными инструкциями по самостоятельному размещению Judge-0.



Установите docker и docker-compose с официальной страницы.

Убедитесь, что докер запущен

sudo systemctl status docker

Сделать так, чтобы docker-compose работал

docker-compose --version

Загрузите и распакуйте архив релиза Judge0

wget https://github.com/judge0/judge0/releases/download/v1.12.0/judge0-v1.12.0.zip
unzip judge0-v1.12.0.zip

Запустите все службы и подождите несколько секунд, пока все не инициализируется.

cd judge0-v1.12.0
sudo docker-compose up -d db redis
sleep 10s
sudo docker-compose up -d
sleep 5s

Изменение размера дискового пространства

Вы можете получить сообщение об ошибке, на устройстве не осталось места

Вам нужно перейти на страницу Управление диском, отредактировать и увеличить размер диска

Остановите и снова запустите виртуальную машину, чтобы изменение размера работало правильно.

Запустите последнюю команду еще раз

sudo docker-compose up -d

Если все пойдет хорошо, вы увидите этот экран.

Ваш экземпляр Judge0 v1.12.0 теперь доступен по адресу http://<IP ADDRESS OF YOUR SERVER>.

Если вы откроете http://34.72.83.62/dummy-client.html и выполните пример кода



Мы углубимся в API и создадим внешний интерфейс в следующих руководствах.

Учебники из этой серии

  1. Разверните наш онлайн-исполнитель кода в Google Cloud (это руководство)
  2. Понимание API Judge0 (скоро)
  3. Создание интерфейса онлайн-редактора кода (скоро)