gitlab_in_docker

1

Описание

Gitlab в докер контейнерах для разработки

6 дней назад
5 дней назад
5 дней назад
README.md

gitlab_in_docker

Gitlab в докер контейнерах для разработки на локалхосте

На хосте должен быть установлены:

  • docker -v
  • docker compose version

Настройка

1) Создаем папки для хранения конфигов и данных gitlab. Пример:
  • mkdir -p /home/ilya/develop/gitlab/config
  • mkdir /home/ilya/develop/gitlab/logs
  • mkdir /home/ilya/develop/gitlab/data
  • mkdir -p /home/ilya/develop/gitlab/runner/config
  • mkdir /home/ilya/develop/gitlab/runner/home
2) Скачиваем docker-compose.yml в /home/ilya/develop/gitlab
3) В файле docker-compose.yml вставляем свои созданные папки из пункта 1)
4) В файле docker-compose.yml вставляем свой домен вместо gitlab.loc
5) В файле docker-compose.yml если нужно отредактировать порты ssh 2424 и web 80.
6) В файле docker-compose.yml если нужно отредактировать параметр hostname
7) В файле docker-compose.yml если нужно отредактировать параметр image: gitlab/gitlab-ce:17.3.7-ce.0 установить нужную версию gitlab. Версию смотреть в hub.docker.com

Запуск

Переходим в /home/ilya/develop/gitlab Запускаем командой

sudo docker compose up -d

Если нужно остановить

sudo docker compose down

После запуска

  • Смотрим пароль от root в /home/ilya/develop/gitlab/config/initial_root_password
  • Заходим на свой домен, http://gitlab.loc или по ip контейнера "gitlab" (посмотреть его можно в sudo docker inspect gitlab | grep IPAddress как правило ip будет 172.0.0.2)
  • Добавить ip контейнера в hosts, например 172.0.0.2 gitlab.loc
  • Вэб интерфейс http://gitlab.loc после запуска контейнера будет доступн не сразу, нужно какое то время на загрузку.
  • В вэб интерфейсе вводим root и пароль который взяли в initial_root_password, далее нужно поменять на свой пароль.

Регистрация gitlab-runner если нужен ci/cd

  • В Admin area --> CI/CD --> Runner'ы --> кнопка "New instance runner"
  • Отметим "Запуск заданий без тегов", Остальное оставляем все по умолчанию, нажимаем "Create runner"
  • Появится страница, где в пункте Step 1 будет написан токен типа "--token glrt-FJhGfxaGAzGV3xyuv9ZS", берем его и выполняем:
    sudo docker exec -it gitlab-runner gitlab-runner register --non-interactive --url http://gitlab.loc --token glrt-FJhGfxaGAzGV3xyuv9ZS --executor "docker" --docker-image alpine:latest --description "docker-runner"

И в /home/ilya/develop/gitlab/runner/config/config.toml Добавить в секцию [runners.docker]

network_mode = "host"