Docker での CircleCI セルフホストランナーのインストール
このページでは、CircleCI セルフホストランナーを Docker にインストールする方法を説明します。
このページはセルフホストランナーのインストールの続きです。 下記の手順を進めるには、既存の名前空間とリソースクラスが必要です。 これは、https://app.circleci.com/[CircleCI Web アプリ] で Self-Hoseted Runners に移動して実行できます ( Web アプリのインストールのドキュメントを参照)。 また、 CLI もご使用いただけます。 |
追加の必須要件
Docker をホストにインストールしておく必要があります。 runner
コンテナは、起動するとすぐにジョブの実行を試みます。 コンテナは、停止されるまで他のジョブの実行用に再利用され続けます。
ホスト上で並列実行できるコンテナの数は、ホストで利用可能なリソースおよびジョブのパフォーマンス要件によって異なります。
CircleCI セルフホストランナーのイメージを拡張した Dockerfile を作成する
Dockerfile.runner.extended
ファイルを作成します。 次の例では、ベースイメージ上に python3 をインストールします。
FROM circleci/runner:launch-agent
RUN sudo apt-get update; \
sudo apt-get install --no-install-recommends -y \
python3
Docker イメージをビルドする
docker build --file ./Dockerfile.runner.extended .
Docker コンテナを起動する
環境変数の値は docker コマンドに紐付けられないので、ps 出力ではこれらの環境変数は表示されません。 |
CIRCLECI_RESOURCE_CLASS=<resource-class> CIRCLECI_API_TOKEN=<runner-token> docker run --env CIRCLECI_API_TOKEN --env CIRCLECI_RESOURCE_CLASS --name <container-name> <image-id-from-previous-step>
コンテナは、起動するとすぐにジョブの実行を試みます。
サーバー上で Docker コンテナを起動する
サーバー上で Docker コンテナを起動する場合、--env
フラグを使って agent_version
と LAUNCH_AGENT_API_URL
</0> の環境変数を渡す必要があります。
CIRCLECI_RESOURCE_CLASS=<resource-class> CIRCLECI_API_TOKEN=<runner-token> agent_version=<agent_version_for_server> LAUNCH_AGENT_API_URL=<server_host_name> docker run --env agent_version --env LAUNCH_AGENT_API_URL --env CIRCLECI_API_TOKEN --env CIRCLECI_RESOURCE_CLASS --name <container-name> <image-id-from-previous-step>
Docker コンテナを停止する
docker stop <container-name>
Docker コンテナを削除する
同じ名前のコンテナを再作成する場合など、停止したセルフホストランナーコンテナをシステムから完全に削除する必要がある場合があります。
docker stop <container-name>; docker rm <container-name>;
ドキュメントの改善にご協力ください
このガイドは、CircleCI の他のドキュメントと同様にオープンソースであり、 GitHub でご利用いただけます。 ご協力いただき、ありがとうございます。
- このページの編集をご提案ください (最初に「コントリビューションガイド」をご覧ください)。
- ドキュメントの問題点を報告する、またはフィードバックやコメントを送信するには、GitHub で issue を作成してください。
- CircleCI は、ユーザーの皆様の弊社プラットフォームにおけるエクスペリエンスを向上させる方法を常に模索しています。 フィードバックをお寄せいただける場合は、リサーチコミュニティにご参加ください。
サポートが必要ですか
CircleCI のサポートエンジニアによる、サービスに関する問題、請求およびアカウントについての質問への対応、設定の構築に関する問題解決のサポートを行っています。 サポートチケットを送信して、CircleCI のサポートエンジニアにお問い合わせください。日本語でお問い合わせいただけます。
または、 サポートサイト から、サポート記事やコミュニティフォーラム、トレーニングリソースをご覧いただけます。
CircleCI Documentation by CircleCI is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.