[Ubuntu] gitlab-runner インストール [gitlab-ce]

Ubuntu-gitlab-runner-インストール-gitlab-ce Ubuntu
Ubuntu-gitlab-runner-インストール-gitlab-ce

この記事は Ubuntu22.04 へ gitlab-runner(以下runner) をインストールする内容となっています。

gitリポジトリマネージャーは、LANに構築したgitlab-ce(以下Gitlab)を想定しています。

Gitlab(mygitlabce.com)での操作

Gitlabへ管理者でログイン > mainmanu > 管理者 > CI/CD > インスタンスrunnerを登録 > Show runner installation and registration instructions と進みます

開いた Install a runner の中の項目を選択します。
Environment は Linux を選択します。
Architecture は runnerが動作しているPCのプロセッサがインテル系であればamd64、raspberryPiなどのarm系であればarm、amr64 を選択します。

Install a runner 内の項目は

  • Environment
  • Architecture

の二つで、Architecture 項目内容は、Environment での選択により変わります。

Environment での項目は Linux macOS Windows Docker kubernetes AWS です。

Install a runner 選択項目

runnerをインストールするPCでの作業

runnerをインストールするPCで Install a runner の中の Download and install binary からのコマンドを実行していきます。

以下のコマンドは例ですので、必ず 各々の環境で表示された Download and install binary からのコマンドで実行して下さい。

$ sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64 
 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 54.7M  100 54.7M    0     0  5480k      0  0:00:10  0:00:10 --:--:-- 6875k
$ sudo chmod +x /usr/local/bin/gitlab-runner 
$ sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash 
$ sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
$ sudo gitlab-runner start 
Runtime platform                                    arch=amd64 os=linux pid=1267 revision=d540b510 version=15.9.1

[]が表示されている入力項目は、エンターキー投下で[]内の値が入ります。

$ sudo gitlab-runner register --url https://mygitlabce.com/ --registration-token 7777777777777777777
Runtime platform                                    arch=amd64 os=linux pid=1372 revision=d540b510 version=15.9.1
Running in system-mode.                            
                                                   
Enter the GitLab instance URL (for example, https://gitlab.com/):
[https://mygitlabce.com/]: 
Enter the registration token:
[7777777777777777777]: 
Enter a description for the runner:
[RUNNER]:
Enter tags for the runner (comma-separated):
test
Enter optional maintenance note for the runner:
maintenance note
WARNING: Support for registration tokens and runner parameters in the 'register' command has been deprecated in GitLab Runner 15.6 and will be replaced with support for authentication tokens. For more information, see https://gitlab.com/gitlab-org/gitlab/-/issues/380872
Registering runner... succeeded                     runner=7777777
Enter an executor: shell, docker-ssh+machine, instance, kubernetes, ssh, virtualbox, docker+machine, custom, docker, docker-ssh, parallels:
docker
Enter the default Docker image (for example, ruby:2.7):
debian:11
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
 
Configuration (with the authentication token) was saved in "/etc/gitlab-runner/config.toml" 

設定ファイル /etc/gitlab-runner/config.toml が作成されます。

sudo gitlab-runner register で以下のエラーが出た場合

ERROR: Registering runner... failed                 runner=7777777 status=couldn't execute POST against https://mygitlabce.com/api/v4/runners: Post "https://mygitlabce.com/api/v4/runners": x509: certificate signed by unknown authority
PANIC: Failed to register the runner.              
Ubuntu22.04 の場合

runner をインストールするPCの /etc/gitlab-runner/certs/ へ、 Gitlabが動作しているPCの /etc/gitlab/gitlab.rb 中 nginx[‘ssl_certificate’] = で指定している .crt ファイルをコピーします。
/etc/gitlab-runner/certs ディレクトリが存在しない場合はディレクトリを新規作成します。
再度、sudo gitlab-runner register を実行します。

Macの場合

runner をインストールするMacの /etc/gitlab-runner/certs/ へ、 Gitlabが動作しているPCの /etc/gitlab/gitlab.rb 中 nginx[‘ssl_certificate’] = で指定している .crt ファイルをコピーします。
/etc/gitlab-runner/certs ディレクトリが存在しない場合はディレクトリを新規作成します。
.crt ファイルをコピー後、Command to register runner 内のコマンドに –tls-ca-file=/etc/gitlab-runner/certs/[コピーした.crtファイル] を追加して実行します。
実行後、設定ファイル .gitlab-runner/config.toml が作成されます。

~ % gitlab-runner register --url https://mygitlabce.com/ --registration-token 7777777777777777777 --tls-ca-file=/etc/gitlab-runner/certs/[コピーした.crtファイル]


タイトルとURLをコピーしました