Finch VM 内で ECR Credential Helper を使えるようにしよう
by
yoshitaka KOITABASHI
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
Finch VM 内で ECR Credential Helper を 使えるようにする KOITABASHI Yoshitaka 2023/4/24 yoshii0110 1
Slide 2
Slide 2 text
2023/4/24 yoshii0110 2 KOITABASHI Yoshitaka @yoshii0110 KDDIアジャイル開発センター株式会社 Amazon EC2, AWS Fargate, AWS App Runner 🥷 🏢 💕
Slide 3
Slide 3 text
あらためて Finch のおさらい 2023/4/24 yoshii0110 3 • build, run, push, pull などの Docker 互換の CLI コマンドツールに nerdctl • コンテナランタイムに containerd • OCI コンテナイメージのビルドに BuildKit • 仮想マシン管理に Lima
Slide 4
Slide 4 text
Finch を使って一連の動作をやってみる (VM の設定) 1: Finch は HomeBrew でひける $ brew install --cask finch 2-1: Finch は 仮想マシン(VM)を利用するため finch vm init コマンドで 初期設定が必要。 初回のみ。これにより VM が起動 $ finch vm init 2-2: 初回以降は、VM の起動、停止を下記のコマンドで制御 $ finch vm start $ finch vm stop 2023/4/24 yoshii0110 4
Slide 5
Slide 5 text
Finch を使って一連の動作をやってみる (コンテナイメージ作成 / コンテナ実行) 3: ほぼ docker コマンドと同じなので、下記のようにコンテナイメージを Dockerfile から作成 $ finch image build -t : 4: コンテナイメージの確認 $ finch image ls 5: コンテナイメージのタグ付け $ finch image tag : : 6: コンテナ実行 $ finch container run --name : 2023/4/24 yoshii0110 5
Slide 6
Slide 6 text
Finch を使っての ECR へ image を push する 2023/4/24 yoshii0110 6 何も考えずに ECR リポジトリへpushすると?? 都度(12時間ごと)、ECR へログインしないといけない
Slide 7
Slide 7 text
Amazon ECR Docker Credential Helper とは? 2023/4/24 yoshii0110 7 https://github.com/awslabs/amazon-ecr-credential-helper Amazon ECR Docker Credential Helper を使うと ECR のログインを省略できる 問題は、これをどうやって Finch で使うのかということ
Slide 8
Slide 8 text
Finch VM の設定 • ~/.finch/finch.yaml に仮想マシンの設定が記載されている • Finch を clone してきて、この finch.yaml の設定を変えることで VM 初期化 / 起動時のプロビジョニングする際に実行されるので、 スクリプトを変えてみる 2023/4/24 yoshii0110 8
Slide 9
Slide 9 text
finch.yaml の中身 2023/4/24 yoshii0110 9
Slide 10
Slide 10 text
VM プロビジョング時に実行されるスクリプトが記載されているので、 そこにECR Docker Credential Helperの設定を記載 2023/4/24 yoshii0110 10
Slide 11
Slide 11 text
ローカルの ~/.finch/config.json を修正 • ~/.finch/config.json にある finch クレデンシャルファイルの設定 も更新する必要がある • ECR Credential helper のリポジトリに例があるのですが、 下記のように更新 2023/4/24 yoshii0110 11
Slide 12
Slide 12 text
修正した finch.yaml を使用して、 ローカルで Finch をビルドし実行 • Finch リポジトリをCloneする際に、サブモジュールも含めるようにする $ git clone --recurse-submodules https://github.com/runfinch/finch.git • 次に、make コマンドを実行してバイナリをビルド _output のバイナリは直接使用できる $ ./_output/bin/finch vm init 2023/4/24 yoshii0110 12
Slide 13
Slide 13 text
動作確認 2023/4/24 yoshii0110 13
Slide 14
Slide 14 text
確認問題 Finch のアイコンはどちらでしょう?? 2023/4/24 yoshii0110 14 ① ② #jawsug_ct で回答を!