Open5
Docker で Microsoft SQL Server を実行するときのメモ
docker-compose.yaml
version: '3'
services:
mssql:
image: mcr.microsoft.com/mssql/server:2022-latest
container_name: mssql
ports:
- 1433:1433
environment:
- ACCEPT_EULA=Y
- MSSQL_SA_PASSWORD=saPassword1234
- MSSQL_PID=Express
- MSSQL_LCID=1041
- MSSQL_COLLATION=Japanese_CI_AS
volumes:
- './docker/db/data:/var/opt/mssql/data'
- './docker/db/log:/var/opt/mssql/log'
- './docker/db/secrets:/var/opt/mssql/secrets'
ACCEPT_EULA
下記について承諾するかどうか
MSSQL_SA_PASSWORD
ネット上に転がっているサンプルでは、SA_PASSWORD
としているケースが多かった。
SA_PASSWORD 環境変数は非推奨です。 代わりに、MSSQL_SA_PASSWORD を使用してください。
Microsoft公式に非推奨とあったので、公式の言う通りにMSSQL_SA_PASSWORD
とした。
なお、SA_PASSWORDにしてSQLサーバを立ち上げても、SSMSでアクセスはできました。
MSSQL_PID
SQL Serverにはいくつかのエディションがあるのため、それを指定できる。
とりあえず作ってみた的な用途には、Express Edition
が適しているのでそれを選択。
MSSQL_LCID
下記に従い、ロケールのIDを指定する。
日本語は1041。
MSSQL_COLLATION
照合順序
照合順序とは
文字の並び方(順番)を決める基準となるもの。
例えば、「a」と「A」、「あ」と「ア」、「新」と「真」では小さい順に並べたらどういう順番で並ぶのか。そういったことを決めている。
SSMSで接続する
SSMSで入力する内容
Server type | Database Engine |
Server name | localhost,1433 |
Authentication | SQL Server Authentication |
Login | sa |
Password | MSSQL_SA_PASSWORDに指定したもの |
接続できた。
エラー解消の参考になりました!ありがとうございます!
参考になって良かったです!