この記事は新野淳一氏のブログ「Publickey」に掲載された「シェルでコンテナの実行や操作ができる「Dagger Shell」、Docker創始者らによるDagger社からオープンソースで登場」(2025年4月1日掲載)を、ITmedia NEWS編集部で一部編集し、転載したものです。
米Dockerの創始者であるSolomon Hykes氏らが中心となって発足されたDagger社から、コンテナ時代の新しいシェルとうたわれた新ツール「Dagger Shell」が登場しました。
Dagger Shellはシェルを置き換えるのではなく補完するものだと説明されています。
Dagger Shellを用いることで、シェルコマンドやシェルスクリプトの中でコンテナの操作が可能になります。
下記はデモ動画のキャプチャです。ここではシェルコマンドとして「container | from alpine | with-exec apk add git | terminal」と入力、実行されています。つまりAlpine Linuxのコンテナを起動してgitをインストールし、terminalを起動するというものです。
Alpine Linuxのコンテナが立ち上がり、ターミナルが利用できるようになりました。lsコマンドを実行するとファイルやディレクトリの一覧が返ってきていることが分かります。
Dagger Shellコマンドはサンドボックス化された関数として実行され、明示的に引数として提供された場合のみファイルやシークレット、サービスなどのホストのリソースにアクセスします。
コンテナの多段階ビルドなどにも対応すると説明されています。
Daggerはもともと、ソフトウェアのビルド/テスト/デプロイの自動化をポータブルにするツールとして登場しました。その基盤はワークフローエンジンのDagger Engineです。
参考:Docker創始者らが開発、ビルド/テスト/デプロイの自動化をポータブルにするツール「Dagger」登場。そのままローカルでもGitHubでもCircleCIでも実行可能に
Dagger ShellはこのDagger Engineが基盤となっています。
そしてDagger EngineやDagger Shellは、Dagger SDKによってGo、Python、Typescript、Java、PHPなどのプログラミング言語によって拡張可能です。
またDaggerverseと呼ばれるDaggerの拡張用モジュールにより拡張することも可能。
Dagger Shellは、最新版のDaggerをインストールすることで利用可能になります。
ローカル環境を汚さず、Dockerコンテナのオーバーヘッドもなし 開発環境を自在に構築できる「Devbox 0.2.0」登場
Google、VSCodeの代替を狙う「Eclipse Theia」コードエディタをクラウド統合開発環境として採用 Google Cloud Shellに統合を発表
UNIXシェルの並列化により最大34倍高速化する「PaSh」、米MITなどが開発 プログラム結果も正確
デバッグのときにDockerコンテナにシェルやデバッグツール群を組み込める「Docker Debug」が正式リリースCopyright © ITmedia, Inc. All Rights Reserved.
Special
PR