コンテナランナーのインストール (Kubernetes)
CircleCI のコンテナランナーをインストールする方法についてこのドキュメントでわかりやすく説明します。
前提条件
コンテナランナーをインストールしてジョブを実行するには、ルートアクセスおよび以下の設定とインストールが必要です。
-
Kubernetes 1.12+
-
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
トラブルシューティング
セルフホストランナーのトラブルシューティングガイドの コンテナランナーのトラブルシューティングのセクション を参照してください。
ドキュメントの改善にご協力ください
このガイドは、CircleCI の他のドキュメントと同様にオープンソースであり、 GitHub でご利用いただけます。 ご協力いただき、ありがとうございます。
- このページの編集をご提案ください (最初に「コントリビューションガイド」をご覧ください)。
- ドキュメントの問題点を報告する、またはフィードバックやコメントを送信するには、GitHub で issue を作成してください。
- CircleCI は、ユーザーの皆様の弊社プラットフォームにおけるエクスペリエンスを向上させる方法を常に模索しています。 フィードバックをお寄せいただける場合は、リサーチコミュニティにご参加ください。
サポートが必要ですか
CircleCI のサポートエンジニアによる、サービスに関する問題、請求およびアカウントについての質問への対応、設定の構築に関する問題解決のサポートを行っています。 サポートチケットを送信して、CircleCI のサポートエンジニアにお問い合わせください。日本語でお問い合わせいただけます。
または、 サポートサイト から、サポート記事やコミュニティフォーラム、トレーニングリソースをご覧いただけます。
CircleCI Documentation by CircleCI is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.