ITmedia NEWS > 速報 >

シェルでコンテナの実行や操作ができる「Dagger Shell」 Docker創始者らによるDagger社からオープンソースで登場

» 2025年04月03日 11時03分 公開
[新野淳一ITmedia]

この記事は新野淳一氏のブログ「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をインストールすることで利用可能になります。

Copyright © ITmedia, Inc. All Rights Reserved.

アイティメディアからのお知らせ

あなたにおすすめの記事PR