昨天架好了 GitLab 的環境了,接著我們要來弄一些基本設定及等等 CI/CD 時會使用到的東西 GitLab 的 Runner 。
首先如果是需要開放給其他人使用的話,那我們需要開啟郵件驗證的功能,不然每次有人要註冊的話就需要管理員手動新增使用者(聽起來好像還不錯的樣子?)。
我們需要到 /ee/config/gitlab.rb
將以下這兩處取消註解,並修改成對應的值。(但你也可以讓使用者註冊後,管理者使用root特權直接讓使用者強制通過驗證)
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "你的username"
gitlab_rails['smtp_password'] = "你的password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_pool'] = false
gitlab_rails['gitlab_email_from'] = 'example@example.com'
gitlab_rails['gitlab_email_display_name'] = 'Example'
gitlab_rails['gitlab_email_reply_to'] = 'noreply@example.com'
gitlab_rails['gitlab_email_subject_suffix'] = ''
gitlab_rails['gitlab_email_smime_enabled'] = false
gitlab_rails['gitlab_email_smime_key_file'] = '/etc/gitlab/ssl/gitlab_smime.key'
gitlab_rails['gitlab_email_smime_cert_file'] = '/etc/gitlab/ssl/gitlab_smime.crt'
gitlab_rails['gitlab_email_smime_ca_certs_file'] = '/etc/gitlab/ssl/gitlab_smime_cas.crt'
修改好了之後,重啟 Docker-Compose 。
如果要寄驗證信給註冊的使用者的話,還要進入 Admin Area -> Settings -> General -> Sign-up restrictions
勾成這樣,然後下方有儲存按鈕,記得儲存。
接著要來註冊 Runner , Runner 主要在我們的 CI 的過程中負責運行自動化的測試、驗證、偵測問題及自動建置出即將部署的版本等等的工作。
我們進入 Admin Area -> Overview -> Runners
選擇右上 Register an instance runner
複製 token
。
接著開啟 Docker-Compose 起起來得 Runner ,開始註冊 Runner (基本上跟我下方輸入的內容相同即可)。
$ docker exec -it <gitlab-runner 的 container_id> /bin/sh
$ gitlab-runner register
$ http://gitlab.example.com
$ <剛剛複製的 token>
$ <runner 的名稱>
$ <runner 欲接收的tag,可不填直接enter>
$ enter 即可
$ shell
$ exit
註冊好之後即會出現剛剛註冊的 Runner 。
最後在重啟依次 Docker-Compose
那麼就先到這邊。
大家掰~掰~