コンテナランナーのインストール (Kubernetes)
CircleCI のコンテナランナーをインストールする方法についてこのドキュメントでわかりやすく説明します。
前提条件
コンテナランナーをインストールしてジョブを実行するには、ルートアクセスおよび以下の設定とインストールが必要です。
-
Kubernetes 1.25+
-
Helm 3.x
-
他のワークロードがない状態の Kubernetes 名前空間
-
checkout ステップで、SSH でチェックアウトするように Git が設定されていること。使用する場合は、
port 22
からのアウトバウンド接続を許可するようにクラスタが設定されていることを確認してください。 -
コマンドラインからランナーをインストールする場合は、 CircleCI CLIを使用します。
セルフホストランナーの利用条件
1. ネームスペースとリソースクラスの作成
2. コンテナランナー インストール
-
以下のコマンドを実行して、コンテナランナー Helm のレポジトリを追加します:
helm repo add container-agent https://packagecloud.io/circleci/container-agent/helm
-
次に以下を実行します:
helm repo update
-
次に、以下のコマンドを実行し、
circleci
Kubernetes namespaceを作成します:kubectl create namespace circleci
-
values.yaml
ファイルという以下を含むファイルを作成します。agent: resourceClasses: namespace/my-rc: token: <resource_class_token>
-
最後に、以下のコマンドを実行します:
helm install container-agent container-agent/container-agent -n circleci -f values.yaml
コンテナランナーの設定例
クラスタにコンテナランナーをインストールしたら、Docker Executor を使ってインストールを検証する CircleCI ジョブを作成し、トリガーします。 コンテナランナーを使って実行する特定のジョブについて、以下のフィールドを設定する必要があります。
-
image:
-
resource_class: <namespace>/<resource-class>
以下は、ジョブ設定のシンプルなコード例です (cimg/base:2021.11
は、よく使用される CircleCI の Docker イメージです)。
version: 2.1
jobs:
build:
docker:
- image: cimg/base:2021.11
resource_class: <namespace>/<resource-class>
steps:
- checkout
- run: echo "Hi I'm on Runners!"
workflows:
build-workflow:
jobs:
- build
トラブルシューティング
セルフホストランナーのトラブルシューティングガイドの コンテナランナーのトラブルシューティングのセクション を参照してください。