AWSでコンテナを使うときはAmazon ECR Public Gallery を使おう
はじめに
docker環境でAWS CLIを構築しようとした時にalpineベースで構築しようとしてめちゃくちゃ詰まりました。AWS CLIの細かい仕様を知らなかったばかりに結構時間を使ってしまったので戒めとして記事を書きます。
alpineを使用する要件があるのであれば、それに従うしかありません。
しかし、特に事情がないのであれば、Amazon Linuxのイメージ
を利用しましょう。
結論
特別な理由がない限りはalpineではなく、Amazon ECR Public Gallery
にあるAmazon Linuxのイメージ
を使いましょう。
※devcontainer(VSCodeの拡張機能)でAWS CLIを使う場合は特に
理由
alpineはAWS CLIのインストール要件を一部満たしていません。
インストール要件を満たす為に別途、必要なパッケージをインストールする必要があります。
必要なパッケージというのは
具体的にはalpine が利用している標準のCライブラリはmusl libc
AWS CLI バージョン 2 では glibc、groff、および less です。
また、EC2からECSなどに切り替える際にはAmazon Linux イメージ
を利用することで
ほぼ互換のある環境で動作確認ができます。
参考