Установка gitlab
Обновим систему:
Вместо domain.ru укажите ваш актуальный домен.
Настройка SMTP
В конфигурационном файле /etc/gitlab/gitlab.rb указать актуальные данные для подключения к smtp серверу
протестируем отправку письма
Настройка HTTPS
Скопируйте валидный сертификат выданный центром сертификации для вашего домена и секретный ключ, вместо domain.ru указать актуальный домен.
и отредактируем конфигурационный файл, вместо domain.ru укажите актуальный домен
Настройка registry
registry gitlab - это хранилище докер контейнеров, в случае с СШ предназначено для хранения контейнеров прикладных сервисов.
Скопируйте валидный сертификат выданный центром сертификации для вашего домена и секретный ключ, вместо domain.ru указать актуальный домен.
Опционально. Настройка LDAP
В конфигурационном файле /etc/gitlab/gitlab.rb указать актуальный адрес, учетную запись для доступа к LDAP
Обновим систему:
yum update -yУстановка пакетов
Вместо domain.ru укажите ваш актуальный домен.
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash EXTERNAL_URL="http://gitlab.domain.ru" yum install -y gitlab-ceНеобходимо открыть http на firewall:
firewall-cmd --permanent --add-service=http systemctl reload firewalld
Настройка SMTP
В конфигурационном файле /etc/gitlab/gitlab.rb указать актуальные данные для подключения к smtp серверу
vi /etc/gitlab/gitlab.rb
gitlab_rails['gitlab_email_from'] = 'gitlab@domain.ru' gitlab_rails['gitlab_email_display_name'] = 'Gitlab' gitlab_rails['gitlab_email_reply_to'] = 'noreply@domain.ru' gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "mail.domain.ru" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "gitlab@domain.ru" gitlab_rails['smtp_password'] = "************" gitlab_rails['smtp_domain'] = "domain.ru" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = true gitlab_rails['smtp_openssl_verify_mode'] = 'none'
gitlab-ctl reconfigure
протестируем отправку письма
gitlab-rails console irb(main):001:0> Notify.test_email('admin@domain.ru', 'Test message from gitlab', 'Message Body from gitlab').deliver_now
Настройка HTTPS
Скопируйте валидный сертификат выданный центром сертификации для вашего домена и секретный ключ, вместо domain.ru указать актуальный домен.
mkdir -p /etc/gitlab/ssl chmod 700 /etc/gitlab/ssl cp ~/domain.ru.key /etc/gitlab/ssl/gitlab.domain.ru.key cp ~/domain.ru.crt /etc/gitlab/ssl/gitlab.domain.ru.crt firewall-cmd --permanent --add-service=https systemctl reload firewalld
и отредактируем конфигурационный файл, вместо domain.ru укажите актуальный домен
vi /etc/gitlab/gitlab.rb
external_url 'https://gitlab.domain.ru' nginx['enable'] = true nginx['client_max_body_size'] = '500m' nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.domain.ru.crt" nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.domain.ru.key" letsencrypt['enable'] = false # чтобы не верифицировал и не пересоздавал сертификаты
gitlab-ctl reconfigure
Настройка registry
registry gitlab - это хранилище докер контейнеров, в случае с СШ предназначено для хранения контейнеров прикладных сервисов.
Скопируйте валидный сертификат выданный центром сертификации для вашего домена и секретный ключ, вместо domain.ru указать актуальный домен.
cp ~/domain.ru.key /etc/gitlab/ssl/registry-gitlab.domain.ru.key cp ~/domain.ru.crt /etc/gitlab/ssl/registry-gitlab.domain.ru.crt
vi /etc/gitlab/gitlab.rb
registry_external_url 'https://registry-gitlab.domain.ru'
gitlab-ctl reconfigure
Опционально. Настройка LDAP
В конфигурационном файле /etc/gitlab/gitlab.rb указать актуальный адрес, учетную запись для доступа к LDAP
vi /etc/gitlab/gitlab.rb
gitlab_rails['ldap_enabled'] = true gitlab_rails['ldap_servers'] = YAML.load <<-'EOS' main: # 'main' is the GitLab 'provider ID' of this LDAP server label: 'LDAP' host: '192.168.11.103' port: 389 uid: 'sAMAccountName' bind_dn: 'ldap@domain.ru' password: '************' encryption: 'plain' verify_certificates: true active_directory: true allow_username_or_email_login: false lowercase_usernames: false block_auto_created_users: false base: 'CN=Users,DC=domain,DC=ru' EOS
gitlab-ctl reconfigureТеперь можно перейти по ссылке https://gitlab.domain.ru При первом входе потребуется указать пароль административной учетной записи root. Установка GitLab Runner Установка docker
yum update -y curl -sSL https://get.docker.com/ | sh systemctl enable docker systemctl start dockerУстановка gitlab-runner, и создание каталога для кэша. Вместо domain.ru указать актуальный домен и REGISTRATION_TOKEN, который находится в меню "Admin Area" - "Overview" - "Runners" в блоке "Set up a shared Runner manually".
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash yum install gitlab-runner gitlab-runner register -n \ --url https://gitlab.domain.ru/ \ --registration-token REGISTRATION_TOKEN \ --executor docker \ --docker-image "docker:stable" \ --docker-privileged mkdir /root/.m2Добавим корневой сертификат домена в доверенные. Вместо domain.ru указать актуальный домен.
cp ~/domain.ru.crt /etc/docker/certs.d/registry-gitlab.domain.ru:5000/ca.crt cp ~/domain.ru.crt /etc/pki/ca-trust/source/anchors/registry-gitlab.domain.ru.crt update-ca-trust systemctl restart dockerРедактируем конфигурационный файл, необходимо указать актуальный домен и REGISTRATION_TOKEN
vi /etc/gitlab-runner/config.toml
concurrent = 2 check_interval = 0 [session_server] session_timeout = 1800 [[runners]] name = "runner-1" url = "https://gitlab.domain.ru/" token = "*******************" # REGISTRATION_TOKEN executor = "docker" environment = ["DOCKER_DRIVER=overlay2", "DOCKER_TLS_CERTDIR=", "GIT_SSL_NO_VERIFY=1"] [runners.docker] image = "docker:stable" privileged = false disable_cache = false volumes = ["/cache", "/root/.m2:/.m2:rw"] shm_size = 0 tls_verify = false disable_entrypoint_overwrite = false oom_kill_disable = false [runners.cache] Insecure = false
systemctl restart gitlab-runner.serviceОпционально. Настройка HTTP registry Gitlab registry по умолчанию работает по протоколу HTTPS. Использование HTTP возможно, но не рекомендуется. На сервере gitlab исправьте ссылку реестра контейнеров на http
vi /etc/gitlab/gitlab.rb
registry_external_url 'http://registry-gitlab.domain.ru'
gitlab-ctl reconfigureНа сервере gitlab-runner в демоне docker укажите ссылку на небезопасный реестр и перезапустите docker
vi /etc/docker/daemon.json
{ "insecure-registries" : ["registry-gitlab.domain.ru:5000"] }
systemctl daemon-reload systemctl restart docker
Комментариев нет:
Отправить комментарий