2021年12月24日 作者 zeroheart

docker sqlserver

sudo docker pull mcr.microsoft.com/mssql/server:latest

sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Pass@w0rd" -p 1433:1433 --name mssql -h mssql -d mcr.microsoft.com/mssql/server:latest

-e "ACCEPT_EULA=Y" 为同意用户协议,保持不用改就行。
"SA_PASSWORD=Pass@w0rd" 为SA用户设置密码,强度要求是至少8位且大小写字母、数字、符号4种中有3种即可。
-p 51433:1433 为容器转发端口,前者为宿主机端口,后者为Sqlserver默认端口
--name mssql 为容器名,自己手动指定一个
-h mssql 为容器内的主机名,我设置的同容器名,避免混淆
-d 容器将在后台运行
mcr.microsoft.com/mssql/server:latest 微软的仓库

修改密码官方建议修改SA密码,因为在安装时设置的SA密码会保存在环境变量SA_PASSWORD中。

sudo docker exec -it mssql /bin/bash

echo $SA_PASSWORD

sudo docker exec -it mssql /opt/mssql-tools/bin/sqlcmd  -S localhost -U SA -P Pass@w0rd  -Q 'ALTER LOGIN SA WITH PASSWORD=NewPass@w0rd'

参考:

以Docker形式部署Sqlserver – 芥末味洋葱 – 博客园 (cnblogs.com)