GitLab システム管理 - ハンズオンラボ: GitLab Runner を構成する

このハンズオンガイドでは、仮想マシンに GitLab Runner をインストールおよび管理する手順を説明します。

完了までの目安時間: 40 分

目的

このラボの目的は、サーバー上で GitLab Runner を作成し、登録する方法を示すことです。詳細については、 GitLab Runner ドキュメント を参照してください。

タスク A. gitlab-runner パッケージをインストールする

  1. 割り当てられた IP アドレスと SSH キーファイルを使って、GitLab Runner サーバー(Omnibus サーバーではないほう)にログインしてください。

    ssh -i <YOUR_ASSIGNED_SSH_KEYFILE> root@<YOUR_RUNNER_SERVER_PUBLIC_IP>
    
  2. システムが認証警告を表示した場合は、yes と入力して Enter を押してください。

  3. GitLab Runner のインストールリポジトリを追加してください。

    curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh" | sudo bash
    
  4. GitLab Runner エージェントをインストールします。

    sudo apt-get install -y gitlab-runner
    
  5. インストールが完了したら、サービスが稼働していることを確認してください。

    sudo gitlab-runner status
    

タスク B. ランナーを GitLab に登録する

  1. Web ブラウザーで GitLab インスタンスにサインインし、左サイドバーから Admin Area を選択してください。

  2. 左サイドバーの CI/CDRunners を選択してください。

  3. New instance runner を選択してください。

  4. Tags セクションで Run untagged jobs を選択してください。

    これにより、ランナーは特定のタグが付いたジョブだけでなく、あらゆるジョブを取得できるようになります。

  5. その他のオプションはデフォルトのままにして、Create runner を選択してください。

  6. ランナーの Operating system として Linux が選択されていることを確認してください。

  7. Step 1 のコマンドをコピーして、コマンドの前に sudo を追加してください。コマンドプロンプトで実行してください。

  8. コマンドはまず GitLab インスタンスの URL を尋ねてきます。この URL が GitLab インスタンスと一致することを確認したら、Enter を押してください。

  9. ランナーに任意の適切な名前を入力してください。

  10. エグゼキューターを尋ねられたら、shell と入力してください。

    shell エグゼキューターは、インスタンスのシェルを使ってジョブを実行してください。エグゼキューターについて詳しくは、ドキュメント を確認してください。

  11. 登録後にランナーを確認するため、sudo gitlab-runner list を実行してください。

  12. Web ブラウザーに戻って View runners を選択してください。登録したランナーが一覧に表示され、オンラインとして表示されていることを確認してください。

タスク C. CI/CD パイプラインでランナーをテストする

  1. 左サイドバーの上部にある GitLab アイコンを選択して、GitLab インスタンスのホームページに戻ってください。

  2. Create a project を選択してください。

  3. Create blank project を選択してください。

  4. プロジェクト名として CICD Test と入力してください。

  5. Project URL で、ネームスペースのドロップダウンから root を選択してください。

  6. その他の設定はそのままにして、Create project をクリックしてください。

  7. プロジェクトのランディングページの中央、プロジェクトタイトルの下にある + ドロップダウンを選択してください。New file を選択してください。

  8. 新しいファイルのページで、ファイル名として .gitlab-ci.yml を入力してください。

  9. 以下のコードをファイルの本文に貼り付けます。

    stages:
      - build
      - test
    
    build_app:
      stage: build
      script:
        - echo "The build stage requires at least one job"
    
    test_app:
      stage: test
      script:
        - echo "The test stage requires at least one job"
    
  10. Commit changes を選択してください。

  11. 左サイドバーで Build > Pipelines を選択してください。

  12. パイプラインのステータス(passed と表示されているはず)を選択してください。

  13. build_app および test_app ジョブのそれぞれをクリックして、ジョブのログとランナー上で実行されたコマンドを確認してください。

ラボガイド完了

このラボ演習は完了しました。本コースのその他のラボガイドを確認できます。

ご提案はありますか?

GitLab システム管理ハンズオンガイドへの変更を提案したい場合は、マージリクエストでお寄せください。