GitLab VPS хостинг: код и CI/CD на вашем сервере
- Установка из официального образа Docker gitlab/gitlab-ce
- Рекомендуем тарифы с 16 GB памяти или больше
- Права root и публичные адреса IPv4 и IPv6
HELPER VPS GitLab VPS , это Linux облачный сервер, на котором вы запускаете GitLab Community Edition, который объединяет Git репозитории и CI/CD в одном месте, с оплатой по счёту от $25.00 в месяц. Выберите образ приложения Docker при создании сервера, подключитесь по SSH и запустите официальный образ gitlab/gitlab-ce, и вы сможете управлять кодом, задачами и пайплайнами вашей команды на своём сервере.
Что такое GitLab?
GitLab это платформа разработки, объединяющая управление Git репозиториями, ревью кода, управление задачами, пайплайны CI/CD и реестр контейнеров. GitLab Community Edition (CE) это бесплатная редакция с открытым кодом, которую команда может установить на свой сервер и сама хранить код и историю разработки. Функции совместной работы, такие как merge request, вики и вехи, включены по умолчанию.
Официальный образ Docker gitlab/gitlab-ce содержит сам GitLab вместе с PostgreSQL, Redis, Nginx, Puma и Sidekiq, поэтому весь сервис работает в одном контейнере. Настройки, логи и данные хранятся отдельно на диске сервера в томах, поэтому при обновлении контейнера до новой версии репозитории и данные пользователей сохраняются.
Что можно делать на GitLab VPS?
Один сервер с собственным GitLab собирает весь процесс разработки на вашем сервере.
Внутренние Git репозитории
Создавайте сколько угодно приватных проектов и распределяйте права чтения и записи между участниками через группы и роли.
Пайплайны CI/CD
Один файл .gitlab-ci.yml автоматически запускает тесты, сборку и деплой, а результаты сразу видны в merge request.
Реестр контейнеров
Загружайте собранные образы Docker в реестр GitLab, чтобы серверы деплоя сразу их забирали.
Задачи и управление проектами
Ведите сроки и документацию рядом с кодом с помощью досок задач, меток, вех и вики.
Как купить сервер для GitLab?
От первого платежа до первого входа всего три шага.
Шаг 1. Выберите тариф с 16 GB или больше
Выберите способ оплаты, выберите город ближе к вашей команде и тариф с 16 GB памяти или больше.
Шаг 2. Создайте сервер из образа приложения Docker
Выберите Docker в списке образов, и будет создан сервер на Ubuntu 24.04 с готовыми Docker Engine и Docker Compose.
Шаг 3. Подключитесь по SSH и выполните команду
Подключитесь по SSH под root, выполните команду ниже, а через несколько минут откройте адрес сервера в браузере и войдите под учётной записью root.
Как установить GitLab CE?
Подключитесь по SSH к серверу, созданному из образа приложения Docker, и выполните команду ниже. Замените gitlab.example.com на свой домен или IP сервера; собственный SSH сервера использует порт 22, поэтому Git SSH для GitLab открывается на порту 2222. Первый запуск занимает несколько минут, а первоначальный пароль root можно посмотреть командой в последней строке (этот файл удаляется через 24 часа).
export GITLAB_HOME=/srv/gitlab
sudo mkdir -p $GITLAB_HOME
sudo docker run --detach \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 2222:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
--shm-size 256m \
gitlab/gitlab-ce:latest
sudo docker logs -f gitlab
sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_passwordЧем хороша собственная установка GitLab на VPS?
Если вы сами ведёте GitLab VPS, вы работаете с кодом и пайплайнами по своим правилам.
Код на вашем сервере. Репозитории, задачи и история CI хранятся на диске сервера в выбранном вами городе, а права доступа определяете вы.
Цена не зависит от числа пользователей. GitLab CE это бесплатная редакция, поэтому за одну цену сервера создавайте столько учётных записей для команды, сколько нужно.
Время CI без ограничений. Подключите GitLab Runner на своём сервере и свободно расходуйте время выполнения пайплайнов в пределах мощности сервера.
Тарифы с большим объёмом памяти. Тарифы с большим объёмом памяти от 16 до 128 GB с запасом тянут GitLab даже с множеством репозиториев и пользователей.
Легко увеличить диск. Добавьте при создании дополнительный диск на 50~1000 GB и долго храните репозитории и образы реестра.
Защита автоматическими копиями. Опция автоматических копий вместе с командой gitlab-backup хранит данные сервера и GitLab в двух слоях.
Технологии, работающие вместе с GitLab
Официальный образ GitLab CE содержит эти технологии и запускает их вместе на GitLab VPS.
- Docker
- PostgreSQL
- Redis
- NGINX
- Ubuntu
Размещайте сервер ближе к своим клиентам
Создавайте сервер GitLab по одной цене в любом из 40 городов в 31 странах.
Сколько памяти нужно для GitLab VPS?
GitLab одновременно запускает веб-сервер, фоновые задачи, базу данных и кеш, поэтому ему нужно минимум 4 GB памяти, а для комфортной работы команды мы рекомендуем 16 GB или больше. С 12 GB интерфейс может замедляться даже при нескольких одновременных пользователях, поэтому в HELPER VPS мы рекомендуем начинать с тарифа на 4 vCPU и 16 GB. Высокопроизводительный тариф с диском NVMe делает клонирование репозиториев и поиск быстрее.
Если на том же сервере через GitLab Runner запускаются ещё и задачи CI, сборки тоже расходуют память, поэтому подойдёт тариф на 16 GB. Командам с большим числом пользователей и проектов стоит выбрать тариф с большим объёмом памяти, например m32, и вынести Runner на отдельный сервер, тогда интерфейс GitLab всегда будет лёгким. В одном аккаунте можно создать до 10 серверов, поэтому такое разделение сделать просто.
Что настроить после запуска собственного GitLab?
После первого входа смените пароль root и в административной области переведите регистрацию в режим одобрения или закройте её, чтобы входили только участники команды. Если вы используете домен, укажите адрес https в external_url в /srv/gitlab/config/gitlab.rb, включите настройку letsencrypt и выполните sudo docker exec -it gitlab gitlab-ctl reconfigure, и сертификат HTTPS подключится автоматически.
Письма-уведомления отправляйте через сервис отправки почты на порту 587, указанный в настройках SMTP в gitlab.rb. Чтобы адрес Git SSH отображался с портом 2222, задайте значение gitlab_rails['gitlab_shell_ssh_port'] равным 2222. Регулярно создавайте копии командой sudo docker exec -t gitlab gitlab-backup create, а при переходе на новую версию сначала сверьтесь с официальным путём обновления и только потом меняйте образ, так безопаснее.
Хостинг GitLab: частые вопросы
Частые вопросы о выборе VPS для GitLab и установке.
Устанавливается ли GitLab VPS в один клик?
После создания сервера из образа приложения Docker официальный образ gitlab/gitlab-ce запускается одной командой docker run. Вставьте команду выше, подождите несколько минут, и в браузере откроется экран входа GitLab.
Сколько памяти минимум нужно GitLab?
GitLab требует минимум 4 GB памяти, а для комфортной работы команды мы рекомендуем 16 GB или больше. Поэтому мы рекомендуем начинать с тарифа на 4 vCPU и 16 GB (g16, n16), а если вы также запускаете CI Runner, лучше тариф на 32 GB.
Можно ли установить пакет Omnibus на образ Ubuntu?
Да, можно добавить официальный репозиторий пакетов GitLab на сервер с Ubuntu и установить его. При способе через Docker настройки, логи и данные разделены по томам, что упрощает обновление и перенос, поэтому на этой странице описан именно он.
Где посмотреть первоначальный пароль root?
Посмотрите его командой sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password. Этот файл удаляется через 24 часа после первой настройки, поэтому после входа сразу смените пароль на новый.
Какой порт использует Git SSH?
Собственный SSH сервера использует порт 22, поэтому команда выше открывает Git SSH для GitLab на порту 2222. Если задать gitlab_shell_ssh_port равным 2222 в gitlab.rb, адрес SSH на странице репозитория тоже будет показан правильно.
Как подключить сертификат HTTPS?
Направьте домен на IP сервера, измените external_url в gitlab.rb на адрес https, включите letsencrypt и выполните gitlab-ctl reconfigure, и сертификат будет автоматически выпускаться и продлеваться.
Можно ли разместить GitLab Runner на том же сервере?
Да, запустите образ gitlab/gitlab-runner в контейнере на том же сервере и зарегистрируйте его. Сборки расходуют и память, и CPU, поэтому рекомендуем выбрать тариф на 16 GB или вынести Runner на отдельный небольшой сервер.
Можно ли отправлять уведомления по почте из GitLab?
Да, укажите в настройках SMTP в gitlab.rb сервис отправки почты на порту 587, и уведомления о merge request и задачах будут отправляться. На серверах HELPER VPS исходящий порт 25 закрыт, поэтому почта отправляется именно так.
Как обновлять GitLab?
Создайте копию через gitlab-backup, скачайте новый образ и пересоздайте контейнер с теми же томами. Если вы перескакиваете через крупные версии, проходите промежуточные версии по официальному пути обновления GitLab.
Можно ли увеличить диск, когда репозиториев станет много?
При создании сервера можно добавить дополнительный диск от 50 до 1000 GB. Укажите в GITLAB_HOME путь к дополнительному диску, и репозитории, реестр и копии будут храниться на просторном диске.
Как оплатить сервер для GitLab?
Выберите способ оплаты и создайте сервер, чтобы начать использовать его сразу. Оплатите счёт на продление до окончания периода, и ваша разработка никогда не остановится.
GitLab это проект с открытым кодом, который развивают GitLab Inc. и сообщество; права на название и логотип GitLab принадлежат их владельцу. Установку, обновления, настройку GitLab CE и поддержку по работе с ним клиент берёт на себя. GitLab CE используется без доплаты, а цена сервера равна цене выбранного тарифа.
Руководство по серверу GitLab
Что полезно сделать сразу после получения сервера.
