これは yuriacatsアドベントカレンダー1日目の記事です。
AmazonからFinchというコンテナ開発のためのクライアントがオープンソースで発表されました。ということでFinchをインストールしてDevContainerで活用できないか調べてみました。
Installのためにやったこと
-
インストーラーからインストール
-
以下のコマンドを実行
この間にコーヒーを入れておくと良い。(公式のおっしゃる通り、それくらい時間がかかる)finch vm init
-
Hello Worldのコマンドを打ってみる
finch run --rm public.ecr.aws/finch/hello-finch
-
実際に手元にあるDockerFileでうまく動くか確認!
たまたま、手元のDockerfileがDevContainerのものしかなかったためそれでお試し# devcontainerで開発しているリポジトリのディレクトリー上で finch build .devcontainer/
いざ、DevContainerでできるか確認
https://code.visualstudio.com/docs/devcontainers/containers
※ MSの公式ではサポートされてはいません
しかし、このようにDevcontainerを別なDockerランタイムで動かすことを想定されているかのような Dockerとdocker-composeの起動コマンドを設定できる設定項目があるので早速Docker Pathを finchにして起動してみました。
結論:世の中はそう甘くない
案の定開始早々の最初のコマンドで起動に失敗していました。
(docker-path) version --format {{.Server.APIVersion}}
(docker-path) ps -q -a --filter
エラー落ちした原因についてなのですが、DevConteinerをビルドする際上記の2つのコマンドが叩かれます。上記のコマンドのうち --format
と--filter
はfinchは持っていないコマンドオプションなのでうまく起動ができなかったようです。
感想
Dockerランタイムとしては少し触った範囲ですとそこまで差を感じず、これから(特にAWSとのシナジーについては)期待が持てるなということを感じております。
参考資料