Closed5
【C#】SQL ServerをDokcerで使ってみる
はじめに
SQL serverをDockerで使ってみるためのメモです。
参考にしたサイト
Dockerイメージを作成する手順
- Dockerを起動する
- 以下をWSLに打つ
docker pull mcr.microsoft.com/mssql/server:2019-latest
- 以下をWSLに打つ
<PASSWORD>の部分は、他のパスワードします。
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<PASSWORD>" \
-p 1433:1433 --name sql1 --hostname sql1 \
mcr.microsoft.com/mssql/server:2019-latest
作成したデータベースに接続する手順
- 以下のコマンドでコンテナにアクセスする
docker exec -it sql1 bash
※mssql@sql1:/$
と表示されたらOK
※コンテナから抜けるには、exit
と入力する
2. 以下のコマンドで、SQLへ接続する
大体、usernameはsaにしとけばOK
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<PASSWORD>"
※1>
と表示されたらOK
※SQL接続の解除は、Quit
と入力する
docker pull/run/execとは?
仕組みと使い方がわかる Docker&Kubernetesのきほんのきほん のp81、p84ページより引用↓
docker pull
:イメージをダウンロードdocker run
:コンテナの起動docker exe
:実行中のコンテナ内でプログラムを実行する
Azure Data StudioやSSMSから接続する
※一部ChatGPT参考
Azure Data Studio
- Azure Data Studioを開く
- 「新しい接続」をクリック
- 以下の情報を入力:
サーバー名: localhost,1433
認証タイプ: SQLログイン
ユーザー名: sa
パスワード:<PASSWORD> - 「接続」をクリック
※証明書を信頼するがでたらそれをクリック
SSMS (SQL Server Management Studio)
- SSMSを開きます。
- サーバーへの接続をクリック
- 以下の情報を入力:
サーバー名: localhost,1433
認証: SQL Server認証
ログイン: sa
パスワード: <PASSWORD> - 「接続」をクリック
【C#】Dockerで起動しているサーバーに接続する
今回は、C#からつなげる方法
- Powershellで以下のコマンドを打つ。
IPCONFIG
IPv4 アドレス:となっているところをメモしておく。
2. appsetting.jsonに、以下を追加する
"ConnectionStrings": {
"DefaultConnection": "Server=<IP_ADRESS>,1433;Database=MyDatabase;User Id=sa;Password=<PASSWORD>;MultipleActiveResultSets=true;TrustServerCertificate=True;"
},
ほかは、dotnet ef migrations add Initial
と dotnet ef database update
してやればいいだけ。
DONEになっていたら成功。
C#で、SQL使うようのプロジェクトの作り方は、以下を確認すればOK
このスクラップは6ヶ月前にクローズされました