Самый быстрый способ раскрутить готовый экземпляр GitLab

Введение

GitLab — это веб-инструмент управления репозиторием Git, который помогает командам совместно работать над кодом. Кроме того, он предоставляет полную платформу DevOps, включая контроль версий, проверку кода, отслеживание проблем и CI/CD.

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

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

Это делает его отличным выбором для разработчиков программного обеспечения, которые хотят быстро и легко начать работу с GitLab.

Разверните GitLab с помощью файла Sameersbn Compose

Первым шагом для развертывания GitLab является загрузка актуальной версии файла Compose:

wget https://raw.githubusercontent.com/sameersbn/docker-gitlab/master/docker-compose.yml

Теперь сгенерируйте три случайные строки длиной не менее 64 символов, откройте файл Compose и используйте эти строки для:

  • GITLAB_SECRETS_OTP_KEY_BASE: используется для шифрования секретов 2FA в базе данных. Ни один пользователь не сможет войти в систему с 2FA, если вы потеряете этот ключ.
  • GITLAB_SECRETS_DB_KEY_BASE: используется для шифрования секретов CI и импорта учетных данных. В случае изменения/утери вы больше не сможете использовать секреты CI.
  • GITLAB_SECRETS_SECRET_KEY_BASE: Используйте для создания ссылок для сброса пароля и стандартных функций аутентификации. Вы не можете сбросить пароли через электронную почту, если они изменены/утеряны.

Запустите свой экземпляр GitLab

docker-compose up

Разверните GitLab вручную с помощью команд Docker

Вместо загрузки актуального файла Compose с сайта Sameersbn вы можете вручную запустить контейнер GitLab, контейнер Redis и контейнер PostgreSQL, выполнив три простых шага.

Шаг 1. Запустите контейнер PostgreSQL.

docker run --name gitlab-postgresql -d \
    --env 'DB_NAME=gitlabhq_production' \
    --env 'DB_USER=gitlab' --env 'DB_PASS=password' \
    --env 'DB_EXTENSION=pg_trgm,btree_gist' \
    --volume ./gitlab_postgresql:/var/lib/postgresql \
    sameersbn/postgresql:12-20200524

Шаг 2. Запустите контейнер Redis

docker run --name gitlab-redis -d \
    --volume ./gitlab_redis:/var/lib/redis \
    sameersbn/redis:latest

Шаг 3: Запустите контейнер GitLab

docker run --name gitlab -d \
    --link gitlab-postgresql:postgresql --link gitlab-redis:redisio \
    --publish 10022:22 --publish 10080:80 \
    --env 'GITLAB_PORT=10080' --env 'GITLAB_SSH_PORT=10022' \
    --env 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' \
    --env 'GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string' \
    --env 'GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-string' \
    --volume ./gitlab_data:/home/git/data \
    sameersbn/gitlab:15.10.0

Примечание. Команды docker используют общие тома (обозначенные ./), которые будут созданы в каталоге, в котором выполняется команда запуска Docker

Доступ к вашему экземпляру GitLab

После успешного запуска приложения GitLab (это может занять несколько минут) вы можете переключиться на свой браузер, указать в нем http://localhost:10080 и установить пароль для учетной записи пользователя root.

Теперь приложение GitLab готово к тестированию, и вы можете начать добавлять в него свой код!

Заключение

Настройка персонального GitLab — это не высшая математика, и ее можно выполнить менее чем за 3 секунды (время загрузки образа и запуска не учитывается).

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

В этом случае я бы предложил использовать файл Sameersbn Compose и добавить перед ним прокси-сервер Traefik, чтобы сделать его доступным через общедоступное доменное имя, а не через IP.

В следующем руководстве рассматриваются все шаги, необходимые для настройки прокси-сервера Traefik, который можно использовать для обеспечения доступа к GitLab с помощью имени хоста и защиты соединения с помощью SSL-сертификата:



Я надеюсь, что эта статья дала вам быстрый и четкий обзор того, как настроить свой личный экземпляр GitLab.

У вас есть какие-либо вопросы относительно этого урока? Я хотел бы услышать ваши мысли и ответить на ваши вопросы. Пожалуйста, поделитесь всем в комментариях.

Не стесняйтесь связаться со мной в мой блог, LinkedIn, Twitter и GitHub.

Спасибо за чтение и удачного кодирования! 🥳 👨🏻‍💻

Это сообщение изначально было опубликовано в моем блоге по адресу https://www.paulsblog.dev/how-to-deploy-gitlab-with-docker-in-5-seconds-or-less/