Как использовать GitLab в условиях санкций
11 марта 2022 года GitLab заявили о приостановке продаж своих сервисов на территории России и Беларуси.
После того как Gitlab ушел из России и Беларуси, у пользователей возникли сложности с регистрацией на сайте gitlab.com. Кроме того, с проблемами столкнулись владельцы существующих аккаунтов: для получения кода подтверждения невозможно указать российский номер телефона. Однако IT-компаниям по-прежнему нужна надежная платформа для разработки программного обеспечения. Как решить проблему с доступом к площадке?
В этой статье мы предложим несколько вариантов решения проблем с доступом: расскажем об образах Гитлаб для облачных серверов, а также об аналогах этого сервиса.
Что такое GitLab
GitLab — это система управления и хранения репозиториев Git с открытым исходным кодом. С помощью GitLab можно писать новый код, тестировать и развертывать его самостостоятельно или в команде разработчиков.
Также в GitLab можно:
- просматривать и тестировать готовый код,
- отслеживать проблемы,
- запрашивать изменения,
- использовать готовые шаблоны,
- создавать отчеты,
- управлять разрешениями и доступами,
- клонировать репозитории,
- настраивать метрики,
- писать на Markdown,
- контролировать ресурсы и многое другое.
Существует две популярных версии Gitlab:
- Gitlab CE (Community Edition) с полностью открытым исходным кодом. Чаще всего именно эта версия используется на готовых решениях.
- Gitlab EE (Enterprise Edition) с частично закрытым исходным кодом. Существует бесплатная лицензия EE с базовой комплектацией, а также платная с дополнительным функционалом.
Минимальные системные требования к Gitlab касаются двух характеристик оборудования: количество ядер центрального процессора и размер оперативной памяти. Сначала опишем требования к центральному процессору.
Число ядер CPU | Число пользователей |
1 | до 100 пользователей |
2 | до 500 пользователей |
4 | до 2000 пользователей |
8 | до 5000 пользователей |
Требования ниже относятся к объему оперативной памяти (RAM).
Размер RAM | Число пользователей |
8 ГБ | до 100 пользователей |
16 ГБ | до 2000 пользователей |
32 ГБ | до 4000 пользователей |
64 ГБ | до 8000 пользователей |
Чем отличается GitLab от GitHub
GitLab и GitHub — это платформы для управления репозиториями Git. В них много похожего функционала, например:
- запрос изменений,
- управление расширениями,
- фрагменты кода,
- сторонние интеграции,
- поддержка Markdown,
- ревью кода,
- инструменты для отслеживания проблем и многое другое.
Однако GitLab и GitHub также имеют существенные различия. Мы сравнили оба сервиса:
GitLab | GitHub |
Можно работать в веб-версии | Можно работать в веб-версии и на ОС Windows и macOS |
Имеет открытый исходный код | Имеет закрытый исходный код |
Можно развернуть на отдельном сервере или на облачном решении | Есть бесплатный доступ к открытым репозиториям и платный — к приватным |
Существуют и бесплатные, и платные версии | Существуют только платные версии |
Можно хранить проекты объемом до 1 ГБ | Можно хранить проекты объемом до 500 МБ. Если требуется больший объем, нужно установить Git LFS |
Встроена платформа развертывания Kubernetes | Встроенной платформы развертывания нет |
![](../media/2024/08/shutterstock_2107460087.jpg)
Как зарегистрироваться в GitLab или GitHub из России
После ввода ограничений для российских и белорусских пользователей возникли сложности с регистрацией на официальном сайте Gitlab, а также с авторизацией в существующих профилях.
Существуют способы обхода ограничений (например, VPN или получение SMS на зарубежный номер), однако большинство из них небезопасны и могут подвести в любой момент: из-за этого пользователь рискует потерять доступ к аккаунту.
Наиболее надежный и безопасный способ продолжать работу с сервисом — это заказ облачного решения с предустановленным Gitlab или Gitlab Runner. Это позволит сохранить доступ к аккаунту и обеспечит бесперебойную работу системы.
Например, на сайте Рег.ру доступны образы Gitlab в рамках облачного решения. Можно выбрать один из двух вариантов:
- Gitlab на Ubuntu 22.04 LTS.
- Gitlab Runner на 24.04 LTS.
После заказа облачного сервера установка дополнительных программ не потребуется — можно приступить к работе сразу после активации сервера. Если вы хотите внести изменения в стандартные настройки, можно использовать статьи из Базы знаний Рег.ру.
Дополнительное преимущество готового решения Gitlab — это круглосуточная техническая поддержка. Специалисты помогут с подбором подходящего решения и окажут поддержку, если у вас возникнут сложности.
Доступные аналоги GitHub и GitLab
Так как сервисы GitHub и GitLab подчиняются законодательству США, существует риск полной блокировки сервисов на территории России. Помимо этого, некоторым компаниям не подходит территория, где хранятся репозитории Gitlab.
Если вам неудобно пользоваться облачным решением или вы хотите перейти на другой сервис, можно подобрать подходящий аналог Gitlab или GitHub. Ниже мы описали пять решений, которыми можно заменить недоступный сервис.
GitFlic
GitFlic — это российский облачный сервис для разработки. Он был создан в качестве аналога gitlab.com, но на русском языке.
В GitFlic предусмотрен функционал для совместной работы. Это значит, что с сервисом может работать не только один пользователь, но и команда программистов. Также GitFlic поддерживает хранение открытых (open-source) и приватных проектов.
Сервис GitFlic включает в себя инструменты, которые помогают довести проект с этапа создания до окончательного выпуска. Среди них:
- система контроля версий,
- масштабирование команд разработки,
- непрерывная интеграция,
- автоматическое тестирование и поддержка кастомных тестов,
- анализ кода на безопасность при помощи SAST, DAST и SCA,
- автоматизация сборки кода и многое другое.
Также в GitFlic включена дополнительная защита логина и пароля пользователей, которые работают над приватными проектами. Присоединиться к такому проекту без приглашения не получится: потребуется SSH-ключ, который позволит идентифицировать клиента при подключении.
GitFlic предоставляет два варианта решения: хранение в облаке и установка на собственное оборудование. Стоимость зависит от количества пользователей: облачное решение предоставляется бесплатно для команд до 5 человек. Если вам требуется большее число пользователей, взимается плата 250 рублей за каждого пользователя.
Решение для установки на личный сервер также имеет отличия по стоимости: оно предоставляется бесплатно для команд до 5 человек (аналогично облачному решению). Если вам нужно собрать команду с большим числом пользователей, стоимость обсуждается индивидуально. Список всех тарифов доступен на официальном сайте.
Gitee
Gitee — это китайский облачный сервис от Open Source China (OSChina). Он содержит более 10 миллионов репозиториев. Официальный сайт Gitee доступен на китайском и английском языках.
Отличительная особенность Gitee — это наличие инструментов для общения (например, прямой обмен сообщениями) и мощная поддержка платформы. Сервис поддерживают университеты и крупные компании, в числе которых Huawei. Также поддержку оказывает сообщество разработчиков и обычных пользователей.
Для удобства работы в Gitee встроена IDE — интегрированная среда разработки или редактор текста для разработчиков.
Цена этого решения зависит от тарифного плана и набора опций. Ознакомиться со стоимостью можно на официальном сайте Gitee.
Gogs
Gogs — это китайский сервис разработки, который написан на языке Go. Он позволяет работать с открытыми и частными репозиториями.
Gogs обладает рядом особенностей, среди которых:
- поддержка популярных операционных систем, среди которых Windows, Linux (Ubuntu, Debian, CentOS, Almalinux и другие) и macOS;
- низкая требовательность к ресурсам оборудования;
- простая установка по инструкции;
- поддержка протокола HTTP и ключей SSH;
- работа в связке с сервисами непрерывной интеграции и организации конвейера для создания кода;
- дизайн, схожий с GitHub;
- интерфейс на русском языке;
- интеграция с социальными сетями (Google+, QQ и Weibo) и многие другие.
Бесплатный архив можно скачать на официальном сайте Gogs. Установочные файлы доступны для любой операционной системы.
RhodeCode
RhodeCode — это немецкая система управления репозиториями, которая ориентирована на работу с IT-компаниями. Она поставляется с частично открытым исходным кодом, поэтому при желании команда разработки может адаптировать платформу под свои нужды.
Отличительная особенность RhodeCode — это неограниченный размер репозиториев и разнообразие подключаемых систем управления. Например:
- Git — популярной системы управления репозиториями,
- Mercurial — системы управления крупными проектами кода,
- Subversion — централизованной системы управления версиями кода.
Все системы управления доступны в едином интерфейсе RhodeCode.
У RhodeCode существует бесплатная версия, которую можно развернуть на собственном VPS или выделенном сервере. Также доступны варианты для предприятий и облачного решения с удаленным подключением. В этом случае стоимость составляет $75 за одного пользователя в год или от $8 за пользователя в месяц. Подробнее о тарифах и функционале можно узнать на официальном сайте RhodeCode.
Launchpad
Launchpad — это система управления проектами, которая создана компанией Canonical. Также эта компания разработала ОС семейства Linux под названием Ubuntu.
Инструменты Launchpad используются для следующих действий:
- создания кода,
- установки нового продукта для пользователей,
- формирования метаданных для поисковых систем,
- отслеживания ошибок в коде,
- сборки пакетов ПО для системы Ubuntu и многих других.
Launchpad предоставляется бесплатно вне зависимости от количества пользователей и типа репозитория, с которым вы планируете работать.
Несмотря на то, что Gitlab ввел ограничения для российских пользователей, легальный способ обхода ограничений по-прежнему существует. Кроме того, на IT-рынке представлены несколько аналогичных систем управления репозиториями. Что касается новых сервисов, Минцифры продолжает работу по замещению ушедших продуктов.
Галина Ашмарина