Dockerがコードネーム「Docker Debug」発表、コンテナ内に任意のデバッグツール群を一括導入、効率的なデバッグを実現。DockerCon 23

2023年10月12日

Docker社は米ロサンゼルスで10月3日と4日の2日間、年次イベント「DockerCon 23」を開催しました。

1日目の基調講演で、Dockerコンテナ内でのアプリケーションのデバッグを高効率化するDocker Desktopの新しい拡張機能「Docker Debug」(コードネーム)が発表されました。

コンテナのデバッグは面倒

一般にDockerコンテナは、使用メモリの最小化とセキュリティを高めるなどの目的で、余計なシェルコマンドやツールなどを徹底的にそぎ落としたOSの上にアプリケーションを載せた構成にします。

そのため、コンテナ内のアプリケーションに問題が発生し、その解決のために基本的な動作確認や設定確認などをしようとした場合でも、下記のようにpingやviなどの基本的なコマンドさえ使えない状態です。

fig

開発者はここから作業を始めなければならず、デバッグ可能な環境の構築に時間がかかってしまいます。

Docker Debugで関連ツールを一括導入

この問題を解決するために発表されたのが、Docker Desktopの拡張機能としてインストール可能なコードネーム「Docker Debug」です。

下記のデモ画面では「Docker Labs Debug Tools」という名前になっています(コマンド名は「dld」)。

fig

Docker Debugはbash/fish/zshとNixOSベースのパッケージマネージャ、ポートフォワーディングなどの機能をDockerコンテナに組み込むのと一緒に、プログラマがデバッグに必要なツール群をDockerコンテナ内に一括導入できるようになります。

ローカルコンテナだけでなくリモートにあるコンテナにも対応。

下記はdldコマンドでDocker Debugをインストールしたところ。コマンド一発でvimやpingが使えるようになっていることが分かります。

fig

Docker Debugで採用しているNixOSベースのパッケージマネージャは、元の環境に対して非破壊的にパッケージを適用する機能があります。

デモでは示されませんでしたが、この機能を使えばDocker Debugで一発導入したシェルやコマンド群は、またコマンド一発できれいさっぱり消し去ることができて、簡単に元のまっさらなDockerコンテナの環境に戻せると推測されます。

追記:2024年8月、Docker Debugが正式版となりました

DockerCon 23

あわせて読みたい

Docker コンテナ型仮想化 開発ツール




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本