docker部署SQL Server 2022
参考微软官方文档Docker:为 Linux 上的 SQL Server 安装容器 - SQL Server | Microsoft Learn
(安装的是开发人员版)
1.请求映像
docker pull mcr.microsoft.com/mssql/server:2022-latest
注意:
- server:xx,xx表示对应的版本(https://hub.docker.com/r/microsoft/mssql-server)
- microsoft/mssql-server-linux已经无法请求镜像
2.运行映像
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=MSsql@123" -p 1433:1433 --name mssql1 --hostname mssql1 -d mcr.microsoft.com/mssql/server:2022-latest
下表对前一个 docker run
示例中的参数进行了说明:
参数 | 说明 |
---|---|
-e "ACCEPT_EULA=Y" | 将 ACCEPT_EULA 变量设置为任意值,以确认接受最终用户许可协议。 SQL Server 映像的必需设置。 |
-e "MSSQL_SA_PASSWORD=YourStrong@Passw0rd" | 指定至少包含 8 个字符且符合 SQL Server 密码要求的强密码。 SQL Server 映像的必需设置。 |
-e "MSSQL_COLLATION=<*SQL_Server_collation*>" | 指定自定义 SQL Server 排序规则,而不使用默认值 SQL_Latin1_General_CP1_CI_AS 。 |
-p 1433:1433 | 将主机环境中的 TCP 端口(第一个值)映射到容器中的 TCP 端口(第二个值)。 在此示例中,SQL Server 侦听容器中的 TCP 1433,此容器端口随后会对主机上的 TCP 端口 1433 公开。 |
--name mssql1 | 为容器指定一个自定义名称,而不是使用随机生成的名称。 如果运行多个容器,则无法重复使用相同的名称。 |
--hostname mssql1 | 用于显式设置容器主机名。 如果未指定主机名,则主机名默认为容器 ID,这是随机生成的系统 GUID。 |
-d | 在后台运行容器(守护程序)。 |
mcr.microsoft.com/mssql/server:2022-latest | SQL Server Linux 容器映像。 |