Docker 公式ブログで Docker Desktop 4.18 リリースのお知らせ「Docker Desktop 4.18: Docker Scout Updates, Container File Explorer GA」が公開されました。docker init というβ機能のコマンドの追加や、Docker Scout CLI、 Docker Desktop での Container File Explorer(ファイルエクスプラーラ)の一般提供開始(GA)等、macOS の adminless(管理者権限不要)インストール対応、Docker Compose File Watchといった、いくつかの新機能が紹介されていました。以下では、その発表ポイントを整理します。
Docker Scout CLI
- Docker Dekstop 4.17で導入された Docker Scout(ドッカー・スカウト:スカウトとは、「偵察」や「探し出す」意味)は、イメージの脆弱性を見えるようにして、迅速な対応を推奨するツール。
- Docker Desktop 4.17 からは
docker scount
コマンドラインでは、コミュニティからのフィードバックを受けた新機能が追加。 docker scout quickview
コマンドは、イメージのセキュリティに関する情報と、対象方法を表示できる。docker scout cves
コマンドは、CVE (脆弱性データベース)の情報を表示するが、docker scout recommendations
コマンドを実行すると、イメージを分析し、脆弱性を減らしたりイメージ容量を小さくする方法、ベースイメージで利用可能なアップデートの情報を表示する。- 2023年1月、BuildKit の拡張 により、attestation(認証)を含むイメージの構築をサポート。これで構築したイメージは、
docker scout
コマンドを使えば、ベースイメージからどのように構築したかを正確に把握できる。 - SBOM attestation(Software Bill of Materials, ソフトウェア構成情報の認証)を含めて push されたイメージがあれば、
docker scout
でローカルの SBOM を新しく作成せず、SBOM attestation からパッケージ情報を読み込む。 - 実験的機能(Experimental)として、
docker scout compare
コマンドによりイメージを比較できる。比較するのは脆弱性やパッケージの情報、環境変数など。Markdown 形式の出力に対応。
Container File Explorer の一般提供開始(GA)
- Docker Desktop のユーザインターフェース上から、直接コンテナ内のファイルを表示・操作できる機能。これがあれば、長いコマンドを覚える必要も無く、 docker cp などで都度操作したりシェル上で作業する必要がなくなる。
- Container File Explorer ができること
- コンテナのファイルシステムを確認
- ホストとコンテナ間でのファイルとフォルダのコピー
- コンテナにファイルを簡単にドラッグ&ドロップできる
- syntax hilighting でファイルを簡単に編集
- ファイル削除
macOS の adminless(アドミンレス、管理者権限不要)インストール対応
- セキュリティ権限が厳しく管理者権限が制限されている環境では、Docker Desktop から管理者権限を必要とする機能を外せるようにしたもの。
- インストール時は、デフォルトでは管理者権限の付与が求められるが、
Settings
->Advanced
タブで変更可能に。
docker init (Beta)
- Docker Desktop 4.18.0 からは、新しいコマンド
docker init
を使えば、 新しいプロジェクトを始めるときに必要なファイル、たとえば Dockerfile、Compose ファイル(docker-compose.yaml)、 .dockerignore をプロジェクトに適した状態で自動的に作成。 - 現時点では Go 言語のみ。Docker チームが取組中なのは Node.js、Python、Java、Rust、 .NET 。数ヶ月で他の機能も追加。その他の言語やフレームワークについては 意見を募っている 。
Docker Compose File Watch(Experimental)
- docker-compose.yaml ファイル中に、新しい
x-develop
セクションをオプションで追加可能。 - 設定後、
docker compose alpha watch
コマンドを実行すると、プロジェクト内にあるファイル変更の監視を開始できる。 - 例えば指定したパスにあるファイルを変更すると、Compose はイメージを再構築し、実行中のサービスを更新版に入れ替えられる。
参考情報
- Docker Desktop 4.18: Docker Scout Updates, Container File Explorer GA | Docker
- docker scout
- docker init