gitlab.comで "Specific" のRunnerを作った時に出たエラー。
その対応方法。
このメッセージが出た環境
このメッセージが出た環境。
-
gitlab.com
を利用している。 - 自分の保持するプロジェクトに Specific Runner(Docker) をローカルに作った。
メッセージ全文
fatal: unable to access 'https://gitlab.com/<ユーザーのNameSpace>/<リポジトリ名>.git/': SSL certificate problem: unable to get local issuer certificate
回避方法
まず、gitlab.com
の証明書をブラウザ経由で入手する。
Runnerの構成ディレクトリの直下に certs
ディレクトリを作成し、そこへ先ほどの証明書を入れる。
Runnerの config.toml
に tls-ca-file
を追加して、証明書へのフルパスを記載する。
例えばRunnerの構成ディレクトリが /etc/gitlab-runner
なら、以下の通りになる。
config.toml
concurrent = 1
check_interval = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "<runnnerの名前>"
url = "https://gitlab.com/"
token = "<トークン>"
tls-ca-file = "/etc/gitlab-runner/certs/gitlab.com.cer"
executor = "docker"
[runners.custom_build_dir]
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]
[runners.cache.azure]
[runners.docker]
tls_verify = false
image = "ruby3.1.1"
privileged = false
disable_entrypoint_overwrite = false
oom_kill_disable = false
disable_cache = false
volumes = ["/cache"]
shm_size = 0
設定ファイル config.toml
は保存後に即時反映されるので、Runnerの再起動は不要。