このブログを検索

この記事の内容は、個人の見解、検証の範囲のものであり、誤りがある可能性があります。
個人の責任において情報活用をお願いします。


2026年5月29日金曜日

GitLab と GitLab Runner を連携させて CI/CD っぽいことをしてみる その2

今回は、前回に続いて GitLab Runner を構築していきます。
土台として利用するのは GitLab と同様に Ubuntu です。
まず Ubuntu にログインして、root になります。
sudo su -
GitLab Runner のコマンドをダウンロード
sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-amd64"
ファイルが指定した場所に置かれているか確認
ls /usr/local/bin/gitlab-runner
/usr/local/bin/gitlab-runner
実行権限の付与
chmod +x /usr/local/bin/gitlab-runner
GitLab Runner 用のユーザーを追加
useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
GitLab Runner のインストール
gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
連携する GitLab の証明書の格納先を作成
mkdir -p /etc/gitlab-runner/certs
※ここで、GitLab の証明書を GitLab Runner に転送するため一旦 GitLab にログインします。  
scp /etc/gitlab/ssl/demo-gitlab.crt ubuntu@GitLab RunnerのIP:/tmp/
GitLab Runner に戻ります。
オーナーとパーミッションを変えておきます(やらなくても大丈夫かもしれないですが試してないです)
cd /tmp/
オーナーを変更します。
chwon  root:root demo-gitlab.crt
パーミッションを変更します。
chmod 644 /tmp/demo-gitlab.crt
GitLab Runner は /etc/gitlab-runner/certs/ に配置された証明書を確認しますが、その際にどの証明書を使うのかをアクセス先の FQDN もしくは IPアドレスで確認します。
そのため、今回は転送した証明書をファイル名をGitLabのFQDNに変換して配置します。
mv /tmp/demo-gitlab.crt /etc/gitlab-runner/certs/GitLabのFQDN.crt
また OS 全体の信頼する証明書リストにこの証明書を追加します。
cp /etc/gitlab-runner/certs/GitLabのFQDN.crt /usr/local/share/ca-certificates/GitLabのFQDN.crt
証明書リストを更新します。
update-ca-certificates
以下のように 『1 added,』と表示されればリストに1つ証明書が加わったことになります。
Updating certificates in /etc/ssl/certs...
rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
証明書を読み込むために GitLab Runner を再起動します。
gitlab-runner restart
これで GitLab と GitLab Runner の連携を行う準備ができました。
次回は、GitLab で GitLab Runner と連携するプロジェクトを作成してみようと思います。