🐷
Windows端末でDistrolessイメージを使用してDockerを起動する方法
前提条件
- Windows 10 Pro、Enterprise、または Education(64ビット版)
- Docker Desktop for Windowsがインストールされていること
基本的な手順
-
Docker Desktopを起動する
- タスクバーのDocker Desktop アイコンをクリックする、または
- スタートメニューからDocker Desktopを検索して起動する
-
PowerShellを管理者権限で開く
- スタートメニューを右クリック
- 「Windows PowerShell (管理者)」を選択
-
Chainguard社が提供する Wolfi イメージをプルする
docker pull cgr.dev/chainguard/wolfi-base:latest
- Wolfiイメージを使用してコンテナを起動する
docker run -it --rm cgr.dev/chainguard/wolfi-base:latest
-
コンテナ内でコマンドを実行する
-
コンテナを終了する
Ctrl + D を押すか、exit コマンドを実行する
補足
Chainguard社が提供するstaticイメージで同様の事を実施します。
docker pull cgr.dev/chainguard/static:latest
Chainguardの static イメージを単純に実行しようとすると、以下のようなエラーが発生します
docker: Error response from daemon: No command specified.
See 'docker run --help'.
これは、static イメージが実行するデフォルトのコマンドを持たないために発生します。
このイメージは主に他のイメージのベースとして、または静的ファイルの配布用に設計されているためです。
対話的な使用には、chainguard社が提供する wolfi イメージなど、より多くのツールを含むイメージを使用できます。
結論
- Chainguard Distrolessイメージ(特に static イメージ)は極めて最小限の構成のため、ほとんどの一般的なLinuxコマンドやツールは含まれていません。
- これらのイメージは主にアプリケーションの実行環境として設計されており、対話的な使用には適していません。
- 実際の使用では、このイメージをベースにしてアプリケーションを含むカスタムイメージを作成することが一般的です。
- Chainguardは複数のDistrolessイメージを提供しています。
- 特定のアプリケーションやランタイムに適したイメージを選択することができます。
Discussion