マイクロソフト、「.NET 7」にDockerコンテナイメージ生成機能を搭載、Dockerファイル不要に

2022年9月9日

マイクロソフトは現在開発中のアプリケーションフレームワーク「.NET 7」に、Dockerコンテナの生成機能を搭載する予定であることを明らかにしました

fig

これまで.NETアプリケーションをDockerコンテナ化するには、Dockerコンテナイメージの生成に必要なファイルを記述したDockerファイルを作成し、ビルドツールを用いて生成する必要がありました。

新たに.NET 7で搭載されるDockerコンテナイメージの生成機能ではDockerファイルの作成などは不要で、標準のdotnetコマンドを実行することで簡単にDockerコンテナイメージが生成されるようになります。

Linux版のDockerイメージ生成に対応、今後Windows版の開発も進める

下記はマイクロソフトが紹介した、.NET 7を用いてDockerコンテナイメージを生成し、実行するまでのコマンドのサンプルです(一部横幅が足りなくて改行されているコマンドがあります)。これだけ簡単に生成から実行まで可能だと示されています。

# create a new project and move to its directory
dotnet new mvc -n my-awesome-container-app
cd my-awesome-container-app

# add a reference to a (temporary) package 
# that creates the container
dotnet add package Microsoft.NET.Build.Containers

# publish your project for linux-x64
dotnet publish --os linux --arch x64 -p:PublishProfile
=DefaultContainer

# run your app using the new container
docker run -it --rm -p 5010:80 my-awesome-container-app:1.0.0

今回、Dockerコンテナイメージのターゲットとなるのはx86プロセッサ向けのLinux版です。ベースイメージのLinuxディストリビューションにはDebianが選択されています。

Debianが選択された理由として、「We think that the choice of defaulting to the Debian-based versions of the runtime images is the best choice for broad compatibility with most applications’ needs.」(Debianベースのランタイムイメージを選択したのは、これが幅広い互換性とアプリケーションのニーズにとって最適だと私たちが考えたからです)と説明しています

.NET 7の正式リリースは今年(2022年)11月。そのときにはこれらの機能が搭載される予定です。マイクロソフトは今後、リモートレジストリへのプッシュ機能、Windows版のDockerコンテナイメージやx64以外のプロセッサ対応も進めていくとしています。

.NET 7はネイティブコンパイラも搭載予定

.NET 7はネイティブコンパイラの搭載も計画されており、開発が進んでいます。.NET 6で長期サポート版(LTS)が登場し、.NET MAUIも正式リリースとなったことで.NET Framework、.NET Core、Xamarinの統合が一段落したといえる.NETは、次の.NET 7でいろいろと強化されていくことになりそうです。

参考:マイクロソフト、次の.NET 7にネイティブコンパイラを搭載する見通しを明らかに

.NET 7関連記事

Tags: .NET Docker コンテナ型仮想化 プログラミング言語 Microsoft

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly





タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

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

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

最新記事10本