exec /usr/local/bin/docker-entrypoint.sh: exec format errorにハマる AWS ECRへプッシュ後、AWR ECSから起動しようとするとどうしてもコケる。 原因 イメージ作成時に稼働プラットフォームを指定すべきであった。
これはなに? AWS CLIでECRの untagged イメージにタグ名をつける手順メモ。 公式の手順だとイメージ変更にタグ名が必要だが、そもそもタグが付いてないイメージなので困って調べた。 イメージにもう一度タグを付ける - Amazon ECR 目次 これはなに? 目次 実行環境 作業 最後に 実行環境 AmazonLinux2 作業 1. タグ名を変更したいイメージの ”imageDigest" 値を取得する。 aws ecr describe-images --profile <your_profile_name> --repository-name <your_repo_name> 2. マニフェストを作成する。 ここが肝で、--image-ids に imageDigest を指定します。 sha256:xxxx の部分は、1で取得した値を入れます。 MANIFEST=$(a
[小ネタ] Amazon ECR(Elastic Container Registry)のlatestタグの向き先をAWS CLIで変更する ども、大瀧です。 Amazon ECR(Elastic Container Registry)は、Dockerイメージを格納できるプライベートリポジトリのマネージドサービスです。弊社が提供するEC/CRMサービスPrismatixはAmazon ECSで稼働しており、コンテナイメージをECRでホストしています。各コンテナのアプリケーションコードはGitHub、CIとしてCircle CIで管理しておりECRにPushするDockerイメージにはCircle CIのビルド設定によって、自動でlatestタグが付与されます。 そのためECSのタスク定義でlatestタグを参照すると最近Pushされたイメージを参照してしまうため、実験的なコードを試すとき「
ECRの使用方法リポジトリ作成まずDockerイメージを保管する場所となるリポジトリを作成します。 AWSマネジメントコンソールにログイン → 画面上部検索窓 [ registry ] で検索 → Elastic Container Registry をクリック → ECR画面の左ペイン [ Repositories ] → [ リポジトリを作成 ] を押下し、次の画面でリポジトリの設定を行います。 一般設定可視性設定一般的な開発では基本的に プライベート を使っていくことになると思います。プライベートに設定するとリポジトリへのアクセスに、IAMでの認証が必要となります。 認証なしで公開するには パブリック を選択します。ECR Public Gallery に公開され誰でもアクセスできるようになります。 リポジトリ名任意の名前を入力します。 タグのイミュータビリティDockerイメージは
$ aws ecr get-login-password --region ap-northeast-1 | docker login --username AWS --password-stdin 111111111111.dkr.ecr.ap-northeast-1.amazonaws.com しかも、AWSのECRにログインするにはAWS CLIのバージョンが1(v1)かそれ以上(v2など)かでログイン方法が異なります。 ここでは、AWS CLIのv1とv2以上に対応したECRへのログインを、たった一つのコマンド「aws-login」で実行できるようにし、 更に、AWSへのログインとECRへのイメージのプッシュを「push-image」のたった1つのコマンドで実行できるようにする方法についてまとめています。
はじめに Amazon ECR(Elastic Container Registry)のDockerイメージを取得するには事前にECRレジストリに対してDockerクライアントを認証させる必要があります。 本記事はDockerクライアントのレジストリ認証の手順についてまとめたものとなります。 Amazon ECR では、ユーザーがレジストリに対して認証したり、AWS ECRレポジトリとの間でイメージをプッシュまたはプルしたりできるためには、事前に IAM ポリシーを通じて ecr:GetAuthorizationToken API へのアクセス権限を許可されている必要があります。 イメージのプル - Amazon ECR 使用環境とバージョン macOS Catalina aws-cli/2.0.28 Docker version 19.03.13 記事の対象 ある程度AWSとDocker
今回はawsのECRに登録するという手順の方を紹介してみようと思います。 ※この記事では、aws cliが使える状態まで来ている前提で書いていきます。 以下の手順はDocker hub編と同じなので省略します。 Dockerfileを作成Dockerfileの中でmysqlをコンパイルする処理を書くコンパイルする部分以外は極力Docker hubで公式に配られているmysqlのDockerfileに寄せる 最後のプッシュの部分はプッシュ先をECRにしますので、ここの手順が変わります。 DockerイメージをIntel Mac(x86_64)とM1 Mac(arm64)両方作成してDocker hubにプッシュする 成果物 https://github.com/gendosu/docker-mysql 手順 M1 Macだけだとちょっと難しいかなという事で M1 MacとIntel Macを
1. はじめに こんにちわ、Mitsuoです。 今回はCloudFormationを用いてAmazon Elastic Container Registry(ECR)をデプロイしてみました。 ECRとは、フルマネージドなコンテナレジストリサービスで、ECS、EKSの様なコンテナオーケストレーションサービスを利用する場合は、合わせて作成するかと思います。 また、レジストリサービスではありますが、レジストリ内にリポジトリも作成可能です。 リポジトリについても、ある程度標準化が出来ると思うので、良ければ参考にしてみてください。 なお、テンプレートに関連して一部の機能の説明はありますが、ECRの概要に関しては解説していないため、公式ドキュメントや他の技術ブログを参照してください。 参考:What is Amazon Elastic Container Registry? 参考:AWS再入門ブログリ
はじめに この記事はコンテナ勉強用として試したことまとめたものです。 今回は今まで作成してきたECR、ECSをCloudFormationでソースコード化してみました。 CloudFormationとは AWSサービスのインフラ構成をコードに記述しテンプレート化し、テンプレートから環境構築できるサービス。VPCやEC2、S3など様々なサービスをプロビジョニングが可能である。テンプレートファイル形式はJSON、YAMLをサポートしている。CloudFormation自体に費用は無料。略してCFnと呼ばれる。 スタック テンプレートからプロビジョニングされるリソースの集合体のことを指す。 スタック単位リソースを作成することが可能。 スタックを削除すると紐づくリソースをまるっと削除できる。 テンプレートの要素 CloudFormationは以下の要素から構成される。Resourcesは必須。 A
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く