3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【C#】Docker上にC#アプリを構築

Last updated at Posted at 2025-12-29

概要

従来、C#/.NET 開発では Visual Studio にランタイムがバンドルされていたため、Docker をランタイムとして活用するケースは限定的でした。
.NET 自体としては Aspire を活用することで、Docker 上に統一された開発環境を構築し、チーム全体で環境差異をなくすことが可能になります。

ただしその場合も Aspire 自体はローカルに構築することが多いです。

そのため今回はランタイム自体も Docker に構築して C#アプリケーションを構築する方法を調査しました。
このアプローチにより、新しいチームメンバーが参加した際に、Docker をインストールするだけで開発環境を整えられます。

メリット

  • 環境の統一: ランタイムのバージョンを厳密に統一できる
  • セットアップの簡素化: 複雑なセットアップ手順が不要

実装手順

1. Dev Container の追加

VSCode の拡張機能を使用して、Dev Container を追加します。

  1. コマンドパレットを開く(Ctrl+Shift+P
  2. devと入力して候補を表示
  3. .NETを選択していき、Docker コンテナ構成を自動生成

生成後、Compose ファイルを GUI 上から確認・編集できます。

2. コンテナの接続と操作

リモート接続

  • 生成された Dev Container へはリモート接続で対応します
  • コンテナ内でアプリの開発を進めます
  • コンテナ内ではランタイムのコマンドが使用可能です。

3. アプリの構築

プロジェクト自体は通常の方法で作成できます。

dotnet new console -n MyApp

まとめ

更に Aspire を用いて DB などをコンテナ化する場合には Docker in Docker か Docker outside of Docker をする必要がありテクニックが必要です。別の機会に記事にしようと思います。

この記事が皆様のコーディングライフの助けになれば幸いです。

参考

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?