Arm 実行環境の使用
クラウド
This document is applicable to CircleCI クラウド
Server v4.x
This document is applicable to CircleCI Server v4.x
Server v3.x
This document is applicable to CircleCI Server v3.x
Machine Executor を使用して、Arm リソースを含む Linux 仮想マシンイメージを指定し、Armリソースクラスを指定すると、ジョブで Arm 実行環境を使用できます。
# .circleci/config.yml
jobs:
my-job:
machine:
image: ubuntu-2004:202101-01
resource_class: arm.medium
steps:
- run: uname -a
- run: echo "Hello, Arm!"
利用可能なリソースクラス
以下の Arm リソースは machine
Executor の一部としてご利用いただけます。
クラス | vCPU | RAM | ディスクサイズ |
---|---|---|---|
arm.medium (デフォルト) | 2 | 8 GB | 100 GB |
arm.large | 4 | 16 GB | 100 GB |
arm.xlarge | 8 | 32 GB | 100 GB |
arm.2xlarge | 16 | 64 GB | 100 GB |
料金やプランの詳細は、 リソースクラスの料金の概要を参照してください。
Arm サポートを含むイメージ
Arm リソースは、Machine Executor を使って以下のいずれかのイメージを使用する際に利用できます。
ubuntu-2004:current
- 最新版。全てのユーザーに推奨ubuntu-2004:2022.04.1
ubuntu-2004:202201-02
ubuntu-2004:202201-01
ubuntu-2004:202111-02
ubuntu-2004:202111-01
ubuntu-2004:202107-01
ubuntu-2004:202104-01
ubuntu-2004:202101-01
ubuntu-2004:202011-01
- 2021 年 2 月 21 日にサポート終了
Machine Executor イメージの全リストは、 CircleCI Developer Hub を参照してください。 イメージの更新に関する通知は、 CircleCI の Discussを参照してください。
制限事項
- 現時点では、実行ファイルが含まれる Orb の中には、Arm に対応していないものがあります。 Orb の使用中に Arm 関連の問題が発生した場合は、 こちらから問題を報告してください。
- 現時点では、32 ビット版の Arm アーキテクチャはサポートされていません。 サポート対象は 64 ビット版の
arm64
アーキテクチャのみです。 - ジョブの実行が始まるまでに、最大 2 分のスピンアップ時間がかかることがあります。 この時間は、Arm リソースを利用するユーザーが増えるにつれ短縮されます。
- イメージに含まれていないソフトウェアが必要な場合は、 こちらからお知らせください。
- Server 3.xでは、VMサービスにEC2プロバイダ を使用している場合のみ、Armリソースを利用できます。 これは、GCP には Arm インスタンスが用意されていないためです。
M1 Mac のサポート
M1 Mac でビルドした Docker イメージは、デフォルトでは CircleCI の標準のプラットフォームとの互換性がありません。 パイプラインの spin up environment
ジョブにはグリーン表示されますが、以下のメッセージが表示されます。
WARNING: docker image ghcr.io/{your_username}/runner-test:latest targets wrong architecture (found arm64 but need [amd64 i386 386])
M1 でイメージをビルドする場合、デフォルトでは arm64
でビルドされるため、 docker build --platform linux/amd64
と指定する必要があります。
詳しく見る
CircleCI Academy の Armコースを受講すると、Armリソースの使用方法や関連するユースケースについてさらに詳しく学ぶことができます。