ECS Express Mode のサービス作成時に ARM64 を指定できるようになったので試してみた
はじめに
2026年9月11日リリースの AWS CLI v2.36.44 で、ECS Express Mode のサービス作成時に CPU アーキテクチャとして ARM64 を指定できるようになりました。
マネジメントコンソールのサービス作成画面でも、CPU アーキテクチャを選択可能になりました。

CLI での検証
本記事の CLI 操作には AWS CLI v2.36.46 を使用しました。
$ aws --version
aws-cli/2.36.46 Python/3.14.6 Linux/...
--cpu-architecture は v2.36.44 で追加されたため、CLI で試す場合は v2.36.44 以降が必要です。以下の CLI 操作はリージョン ap-northeast-1、クラスター default で実施しました。
ARM64 でサービスを作成
コンテナイメージには public.ecr.aws/nginx/nginx:stable-alpine を使いました。amd64 と arm64 の両アーキテクチャに対応したマルチアーキテクチャイメージでした。
タスク定義は用意せず、サービスを作成しました。ネットワーク関連のパラメータ(VPC やサブネットの指定など)は環境ごとに異なったため、CLI リファレンスを参照して指定しました。
aws ecs create-express-gateway-service \
--service-name express-arm64-explicit \
--primary-container "image=public.ecr.aws/nginx/nginx:stable-alpine,containerPort=80" \
--cpu-architecture ARM64 \
--region ap-northeast-1
作成したサービスを確認すると、cpuArchitecture が指定どおりになっていました。
{
"cpu": "1024",
"memory": "2048",
"cpuArchitecture": "ARM64",
"primaryContainer": {
"image": "public.ecr.aws/nginx/nginx:stable-alpine"
}
}
起動した Fargate タスクを describe-tasks で確認すると、ecs.cpu-architecture 属性は arm64 でした。
"attributes": [
{
"name": "ecs.cpu-architecture",
"value": "arm64"
}
]
サービスエンドポイントのレスポンスヘッダから、nginx が正常に応答していることを確認できました。
HTTP/2 200
server: nginx/1.30.4
カスタムタスク定義
サービス追加時に ARM64 を利用するには、カスタムタスク定義が必要です。
検証では、executionRoleArn にタスク実行ロールの ARN を指定しました。awslogs-create-group を true に指定したため、ロググループは初回起動時に自動作成されました。
{
"family": "express-arm64-custom-td",
"networkMode": "awsvpc",
"requiresCompatibilities": ["FARGATE"],
"cpu": "256",
"memory": "512",
"runtimePlatform": {
"cpuArchitecture": "ARM64",
"operatingSystemFamily": "LINUX"
},
"executionRoleArn": "arn:aws:iam::123456789012:role/ecsTaskExecutionRole",
"containerDefinitions": [
{
"name": "Main",
"image": "public.ecr.aws/nginx/nginx:stable-alpine",
"essential": true,
"portMappings": [
{
"containerPort": 80,
"protocol": "tcp",
"name": "http"
}
],
"logConfiguration": {
"logDriver": "awslogs",
"options": {
"awslogs-group": "/ecs/express-arm64-custom-td",
"awslogs-region": "ap-northeast-1",
"awslogs-stream-prefix": "main",
"awslogs-create-group": "true"
}
}
}
]
}
まとめ
従来、ECS Express Mode を新規に作成する場合、初回サービスは x86_64 で起動していたため、ARM64 を利用するには、ARM64 を指定したカスタムタスク定義でサービスを作成し、初回サービスと入れ替える手間がありました。今回のアップデートにより、初回サービスの作成時から ARM64 を利用できるようになりました。
開発環境が ARM(Mac など)でクロスビルドを避けたい場合や、コスト削減のため ARM アーキテクチャに統一したいワークロードで ECS Express Mode を新規に構築する際は、本アップデートをお試しください。






