Docker社はDocker Desktop 4.27をリリースした。このバージョンでは、Javaのサポート、同期ファイル共有、拡張コンテナ分離(ECI)によるTestContainersのサポート、Docker Build Cloud、Docker Debugなどが追加され、Docker Initが "一般提供"(GA)になった。
Docker InitはDocker 4.18でベータ版としてリリースされたもので、必要なアセットと足場を「初期化」または作成することで、Dockerリソースをプロジェクトに簡単に追加できるように設計されたCLIコマンドである。Docker 4.26ではPHPがサポートされ、Docker 4.27ではJavaがサポートされた。現在サポートされている言語のリストには、Go、Node.js、Rust、ASP.NETが含まれている。
アセットを自動的に作成するには、ターゲットプロジェクトのフォルダ内でdocker init
コマンドを実行するだけで、プロジェクトの特性に基づいてdockerfiles、compose、.dockerignore
ファイルが自動的に作成される。
同期ファイル共有は、コンテナ内で大規模なコードベースを仮想ファイルシステムで使用する際の課題を解決することを目的とした、代替のファイル共有メカニズムである。Docker社によると、この機能は同期ファイルシステムキャッシュを使用することで、ファイル操作速度を2~10倍に向上させるという。大規模なリポジトリを持っているユーザーだけでなく、VirtioFS、gRPC FUSE、osxfsなどの仮想ファイルシステムを使用しているユーザーや、パフォーマンス上の制約があるユーザーも、この機能の恩恵を受けることができる。
Docker Desktop 4.27では、TestContainersを拡張コンテナ分離(ECI)と共に使用する機能が導入された。ECIは、Docker Desktop VMへのrootアクセスなしでコンテナを実行することで、コンテナ内で実行されている悪意のあるワークロードがDocker Desktopやホストを危険にさらすことを防ぐ、新しいセキュリティレイヤーを提供する。
Docker Build Cloudは、ローカルとCIの両方でコンテナイメージを高速にビルドできるように設計されたサービスである。ネイティブビルド(AMD64およびARM64 CPUアーキテクチャ向け)はクラウドで実行され、リモートビルドキャッシュを使用する。
Docker Debug Betaは、開発者が問題を迅速に発見し解決できるように設計されたCLIコマンドで、ローカルおよびリモートのコンテナ化されたアプリをデバッグするための、言語に依存しない統合ツールボックスを提供する。使い始めるには、Docker Desktop CLIでdocker debug <コンテナまたはイメージ名>
を実行するだけである。
Docker 4.26では、Docker Builds viewがGAになった。これはDocker Desktopのシンプルなインターフェイスで、現在システムで実行中のアクティブなビルドを可視化し、完了したビルドの分析やデバッグを可能にするように設計されている。docker build
またはdocker buildx build
で開始されたビルドはすべて、自動的にBuildsビューに表示される。そこから、タイミング情報、ビルドキャッシュの使用状況、Dockerfileソース、ログアクセスなど、ビルド呼び出しのプロパティを検査できる。
Docker 4.26以降、ユーザはDocker DesktopとMicrosoft Dev Boxを使ってクラウド上でコンテナを作成できるようになった。Microsoft Dev Boxの使用を開始するには、ユーザーはAzureマーケットプレイスにアクセスし、Docker Desktop-Dev Box Compatibleイメージのパブリックプレビューをダウンロードする必要がある。
Docker Desktopのニュースの詳細は、リリースノートに記載されている。