デバッグのときにDockerコンテナにシェルやデバッグツール群を組み込める「Docker Debug」が正式リリース
Docker社は、デバッグしたいときにDockerコンテナにシェルやデバッグツール群を組み込める「Docker Debug」の正式リリースを発表しました。
これはWindowsやMacなどのデスクトップ環境にDockerコンテナ環境を簡単に導入できるDocker Desktopの最新版として7月29日にリリースされた「Docker Desktop 4.33」に含まれています。
Dockerコンテナを使うとデバッグが難しくなる
Docker Debugは、昨年(2023年)10月のDockerCon 23で発表された機能です。
参考:Dockerがコードネーム「Docker Debug」発表、コンテナ内に任意のデバッグツール群を一括導入、効率的なデバッグを実現。DockerCon 23
一般にDockerコンテナは、使用メモリの最小化とセキュリティを高めるなどの目的で、シェルやツールなどを徹底的にそぎ落としてスリム化したOSの上にアプリケーションを載せた構成にします。
そのため、コンテナ内のアプリケーションに問題が発生した場合に、エディタやデバッガなどを使って状況を確認し、デバッグをしようとしても、pingやviといったコマンドはおろかコマンドラインを提供するシェルも用意されていない環境に対してデバッグを始めなければならない、といった状況が発生します。
これを解決するのが「Docker Debug」です。
コンテナにシェルやツール群を簡単に組み込める
Docker Debugは、任意のコンテナやイメージに対してシェルとvim、nano、htop、curlなどのデバッグに利用できるツール群を、必要になったときに簡単に組み込むことができます。ネットワーク関連の問題を切り分けるために、ホストとコンテナ間で動的なポートフォワードも可能です。
ツール群は、Docker Debugに組み込まれている「NixOS package manager」を用いてカスタマイズ可能です。
Docker DebugはDocker DesktopのGUIもしくはコマンドラインから起動できます。
これにより、スリム化されたOSを用いたコンテナを変更することなく、容易にデバッグできるようになります。
Docker Buildチェックも正式版に
Docker Desktop 4.33ではDocker Debugだけでなく、「Docker Buildチェック」機能も正式版となっています。
参考:Dockerfileを解析、最適化やベストプラクティスをガイドしてくれる「Docker Buildチェック」機能が正式版に
あわせて読みたい
GitHub、AIアプリ開発環境「GitHub Models」発表。主要なAIモデルをプレイグラウンドで評価、アプリへの組み込みまでシームレスな環境を提供
≪前の記事
Dockerfileを解析、最適化やベストプラクティスをガイドしてくれる「Docker Buildチェック」機能が正式版に