Visual Studio Code 用の MSSQL 拡張機能のローカル SQL Server コンテナー機能を使用すると、開発者は 1 つの Docker コマンドを記述することなく、完全に構成された SQL Server コンテナーを起動できるため、ローカル開発が簡略化されます。 コンテナーは、[接続] ビューから直接デプロイおよび管理できます。 この新機能は、運用環境で使用できる同じデータベース エンジンを使用したワークロードのプロトタイプ作成、開発、テストに最適です。
既定では、コンテナー ウィザードでは SQL Server 2025 (17.x) が使用されます。これには、ベクター データ型や JSON 関数などの AI 対応機能が含まれています。 テストのニーズに応じて、SQL Server 2022 (16.x)、SQL Server 2019 (15.x)、または SQL Server 2017 (14.x) から選択することもできます。
注
ローカル SQL Server コンテナー エクスペリエンスは、Docker Desktop (または同等のもの) が Linux コンテナー モードで実行されている限り、macOS、Windows、Linux で動作します。
特徴
MSSQL 拡張機能のローカル SQL Server コンテナーには、次の機能があります。
- Docker コマンドを記述せずにローカル SQL Server コンテナーを作成します。
- 複数の SQL Server バージョン (SQL Server 2025 (17.x) (既定)、SQL Server 2022 (16.x)、SQL Server 2019 (15.x)、および SQL Server 2017 (14.x)) から選択します。
- コンテナー名、ホスト名、ポートをカスタマイズします。
- デプロイ前に Docker のインストールと実行状態を自動的に確認します。
- 1433 が既に使用されている場合は、使用可能なポートを自動的に割り当てます。
- コンテナーの再起動間で接続設定を自動接続して保持します。
- [接続] ビューのコンテキスト メニューからコンテナーのライフサイクル (開始、停止、削除) を管理します。
- オブジェクト エクスプローラー、テーブル デザイナー、スキーマ デザイナー、クエリ エディター、GitHub Copilot など、すべての主要な MSSQL 拡張機能で使用します。
Von Bedeutung
ローカル コンテナーは 開発専用です。 運用環境でのデプロイはサポートされません。
ローカル コンテナーを作成する
ローカル SQL Server コンテナーを作成するには:
[接続] ビューで、メニューから [ローカル SQL コンテナーの作成] オプションを選択します。
[概要] 画面を確認します。この画面では、ローカルの SQL Server コンテナー エクスペリエンスで期待できることが強調表示されています。
準備ができたら、[ 作業の開始 ] を選択して続行します。
MSSQL 拡張機能は、デプロイ前に Docker を自動的にチェックします。
- Docker がインストールされていない場合は、インストール リンクを含むメッセージが表示されます。 続行する前にインストールする必要があります。
- Docker がインストールされていても実行されていない場合は、起動するように求められます。 Docker の起動に失敗した場合は、再試行または取り消します。
すべての前提条件が満たされたら、[ 次へ ] を選択してデプロイを続行します。
[デプロイ設定] パネルで、次の操作を行います。
- SQL Server のバージョンを選択します (既定では SQL Server 2025 (17.x) が選択されています)。
-
saアカウントのパスワードを入力します。 - 接続プロファイルの名前を入力します (省略可能)。
- 必要に応じて、高度なオプションを設定します。
- コンテナー名
- 港 / ポート
- ホスト名
- ライセンス条項に同意します。
- [ コンテナーの作成] を選択します。
SQL コンテナーのデプロイのしくみ
[コンテナーの 作成] を選択すると、拡張機能によってすべての処理が自動的に行われます。
- 選択した SQL Server イメージをプルします (まだキャッシュされていない場合)
- 選択した設定で SQL Server コンテナーを作成します
- ログを監視して、すべてのデータベースが完全に復旧され、準備ができていることを確認します
- 接続プロファイルを作成し、コンテナーに接続します
デプロイが完了すると、コンテナーが開始され、MSSQL 拡張機能が新しいデータベースに自動接続されます。
コンテナーを管理する
コンテナーを管理するには、[ 接続 ] ビューで接続プロファイル名を右クリックします。 コンテキスト メニューから、次のことができます。
停止したコンテナーを起動する
拡張機能は、コンテナーを開始する前に Docker が実行されているかどうかを確認します。 Docker が実行されていない場合は、起動するように求められます。
実行中のコンテナーを停止する
このオプションは、データベースの状態を維持しながらコンテナーをシャットダウンします。 同じメニューからいつでも再起動できます。
コンテナーを削除する
このオプションでは、コンテナーとそのデータが完全に削除されます。 続行する前に確認を求められます。
Von Bedeutung
コンテナーを削除すると、関連付けられている接続プロファイルも削除されます。
自動再接続エクスペリエンス
再接続時にコンテナーまたは Docker が実行されていない場合は、拡張機能によって起動するように求められます。 手動でトラブルシューティングを行う必要はありません。
サポートされているシナリオ
MSSQL 拡張機能のすべてのコア機能でローカル SQL Server コンテナーを使用できます。
- クエリ エディターと IntelliSense
- テーブル デザイナーとスキーマ デザイナー
- GitHub Copilot
- オブジェクト エクスプローラーと接続管理
この機能により、ローカル SQL Server コンテナーは次の場合に最適です。
- 新機能のプロトタイプ作成
- スキーマの変更のテスト
- 分離された環境での自動テストの実行
- SQL Server 2025 (17.x) の機能の実験
制限事項
- Docker Desktop (またはそれと同等のもの) をインストールして実行する必要があります。
- Linux ベースの SQL Server コンテナーのみがサポートされています (SQL Server 2017 (14.x) 以降のバージョン)。
- Podman はサポートされません。
- バックアップ/復元、クラスタリング、スクリプトの初期化、Docker Compose は、組み込みウィザードではサポートされていませんが、外部ツールまたはコマンドを使用してこれらのタスクを手動で実行できます。
- 運用環境での使用ではなく、ローカル開発用に厳密に設計されています。
- Docker のインストール、構成、またはランタイムに関する問題は、ユーザーが解決する必要があります。
- コンピューターに十分なリソースがあることを確認するか、Docker 設定を使用して Docker のメモリ割り当てとコンテナーのリソース制限を調整して、安定したパフォーマンスを確保します。
- メモリ要件:
- SQL Server では、Linux ベースのコンテナーを起動するために少なくとも 2 GB のメモリが必要です。
- 既定では、SQL Server on Linux では、コンテナーで使用できるメモリの約 80% が使用されます。