「Docker Dev Environments」発表。Dockerコンテナを使ってコードと同様に開発環境をバージョン管理、共有、再現可能に

2021年7月2日

Docker社は、アプリケーションプログラマがソースコードのバージョン管理をGitHubを用いて行うように、Dockerコンテナを用いて開発環境のバージョン管理や共有、再現などを簡単に行える「Docker Dev Environments」のテクニカルプレビューを発表しました

fig

現在、複数のプログラマが所属する開発チームではGitHubなどのソースコード管理ツールを用いてソースコードのバージョン管理を行うのが一般的です。

これによりソースコードのバージョン管理が容易になる一方、例えばソースコードのバージョンによってビルド環境やビルド後のアプリケーション実行環境が微妙に変化した場合、複数の開発環境や実行環境を管理する手間は依然として残っていました。

今回発表されたDocker Dev Environmentsは、Dockerコンテナを用いてこうしたビルド環境や実行環境の変化の管理を容易にするものです。

Docer Dev Environmentsを用いることで、ソースコード管理ツールにはコードと一緒にその環境の詳細もバージョン管理されるため、再現性のある開発環境を簡単に構築し開発チーム内で共有できるようになります。

Dockerのブログ「Tech Preview: Docker Dev Environments」から、Docker Dev Environmentsの説明を一部引用しましょう。

Once a developer is working in a Development Environment, they can share their work-in-progress code and dependencies in one click via the Docker Hub. They can then switch between their developer environments or their teammates’ environments, moving between branches to look at work-in-progress changes without moving off their current Git branch.

開発者がDev Environmentで作業する場合、Docker Hubを介してワンクリックで作業中のコードや開発環境の依存関係を共有できます。開発者は、自分の開発環境とチームメイトの開発環境とを切り替えつつ、現在作業中のGitブランチから移動することなく、ブランチ間を移動して開発中のコードの変更を確認することができます。

下記の説明はやや分かりにくいですが、開発環境としてのDockerコンテナ内からソースコードをマウントすることで環境とコードを分離して管理可能にし、それによりさまざまな利点が得られることを説明しているようです。

Dev Environments use tools built into code editors that allow Docker to access code mounted into a container rather than on the developer’s local host. This isolates the tools, files and running services on the developer’s machine allowing multiple versions of them to exist side by side, also improving file system performance!

Dev Environmentsでは、コードエディタに組み込まれたツールを使用し、開発者のローカルホストではなくDockerコンテナにマウントされたコードにDockerがアクセスできるようにします。これにより、開発者のマシン上のツール、ファイル、実行中のサービスが分離され、複数のバージョンが並んで存在できるようになり、ファイルシステムのパフォーマンスも向上します。

Docker Dev Environmentsは、Docker Desktopの新機能として搭載されます。

Docker社はDocker Hubを中心とした開発者向けのツールに注力することを現在の戦略として明確にしています。Docker Dev Environmentsはその最新の成果といえそうです。

あわせて読みたい

Docker プログラミング言語 Docker Desktop




タグクラウド

クラウド
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本


<!- script for simple analytics events -->