Поиск по сайту Поиск

Как использовать GitLab в условиях санкций

11 марта 2022 года GitLab заявили о приостановке продаж своих сервисов на территории России и Беларуси.

После того как Gitlab ушел из России и Беларуси, у пользователей возникли сложности с регистрацией на сайте gitlab.com. Кроме того, с проблемами столкнулись владельцы существующих аккаунтов: для получения кода подтверждения невозможно указать российский номер телефона. Однако IT-компаниям по-прежнему нужна надежная платформа для разработки программного обеспечения. Как решить проблему с доступом к площадке?

В этой статье мы предложим несколько вариантов решения проблем с доступом: расскажем об образах Гитлаб для облачных серверов, а также об аналогах этого сервиса.

Что такое GitLab

GitLab — это система управления и хранения репозиториев Git с открытым исходным кодом. С помощью GitLab можно писать новый код, тестировать и развертывать его самостостоятельно или в команде разработчиков.

Также в GitLab можно:

  • просматривать и тестировать готовый код,
  • отслеживать проблемы,
  • запрашивать изменения,
  • использовать готовые шаблоны,
  • создавать отчеты,
  • управлять разрешениями и доступами,
  • клонировать репозитории,
  • настраивать метрики,
  • писать на Markdown,
  • контролировать ресурсы и многое другое.

Существует две популярных версии Gitlab:

  1. Gitlab CE (Community Edition) с полностью открытым исходным кодом. Чаще всего именно эта версия используется на готовых решениях.
  2. 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 также имеют существенные различия. Мы сравнили оба сервиса:

GitLabGitHub
Можно работать в веб-версииМожно работать в веб-версии и на ОС Windows и macOS
Имеет открытый исходный кодИмеет закрытый исходный код
Можно развернуть на отдельном сервере или на облачном решенииЕсть бесплатный доступ к открытым репозиториям и платный — к приватным
Существуют и бесплатные, и платные версии Существуют только платные версии
Можно хранить проекты объемом до 1 ГБМожно хранить проекты объемом до 500 МБ. Если требуется больший объем, нужно установить Git LFS
Встроена платформа развертывания KubernetesВстроенной платформы развертывания нет

Как зарегистрироваться в GitLab или GitHub из России

После ввода ограничений для российских и белорусских пользователей возникли сложности с регистрацией на официальном сайте Gitlab, а также с авторизацией в существующих профилях.

Существуют способы обхода ограничений (например, VPN или получение SMS на зарубежный номер), однако большинство из них небезопасны и могут подвести в любой момент: из-за этого пользователь рискует потерять доступ к аккаунту.

Наиболее надежный и безопасный способ продолжать работу с сервисом — это заказ облачного решения с предустановленным Gitlab или Gitlab Runner. Это позволит сохранить доступ к аккаунту и обеспечит бесперебойную работу системы.

Например, на сайте Рег.ру доступны образы Gitlab в рамках облачного решения. Можно выбрать один из двух вариантов:

  1. Gitlab на Ubuntu 22.04 LTS.
  2. 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-рынке представлены несколько аналогичных систем управления репозиториями. Что касается новых сервисов, Минцифры продолжает работу по замещению ушедших продуктов.

Галина Ашмарина

Аутсорсинг VS собственное производство одежды: опыт бренда кроссовок

Один способ позволяет отслеживать каждую деталь изделия, другой – сфокусироваться на брендинге и маркетинге. Разбираемся в плюсах и минусах каждого варианта и выбираем оптимальный для старта бизнеса.
Read More

Как сократить затраты на инфраструктуру в два раза: опыт ИТ-компании Ctrl2GO

Рассказываем, как помогли российскому разработчику систем аналитики мигрировать в частное облако и сократить затраты на аутсорсинговые услуги. (далее…)
Read More

Каким должен быть сайт-визитка для эксперта

Рассказываем, как создать сайт-визитку и какой должна быть структура. Внутри — инструкция, которая поможет предпринимателям.
Read More

Как продвигать бизнес с помощью геосервисов

Онлайн-карты — хорошая площадка для привлечения аудитории в бизнес. Рассказываем об инструментах продвижения в геосервисах.
Read More

Как открыть своё digital-агентство

Можно стартовать с багажом знаний из найма или практически без опыта. Рассказываем, что нужно делать: от проработки идеи и миссии до поиска первых клиентов и сотрудников.
Read More

Что такое Data Science и кто такой Data Scientist

Что такое наука о данных, чем занимается Data Scientist и можно ли обучиться этой специальности с нуля – об этом...
Read More

Как и зачем малому бизнесу работать с НКО

Начинающим компаниям в сфере IT, дизайна, PR и маркетинга, бухгалтерских и аудиторских услуг НКО могут быть очень полезны как клиенты. Раскрываем все нюансы такого сотрудничества: от выбора партнёра до менеджмента проекта и финансовых отношений.
Read More

K8s для начинающих

В современном мире применение контейнеризации стало неотъемлемой частью процесса разработки и тестирования программного обеспечения. Контейнеры позволяют разработчикам упаковывать приложения вместе...
Read More

Как открыть ИП

Статус ИП — удобный «средний» вариант для старта бизнеса. Рассказываем, как открыть ИП, сколько времени и денег на это потребуется, на что обратить внимание.
Read More

Что такое конверсия и как ее рассчитать

Конверсия помогает бизнесу увидеть рост и оценить успешность рекламной кампании. Какие виды бывают, почему конверсия может быть низкой и как ее повысить — в нашем материале.
Read More