docker安装sql server

✅ 命令回顾
1 | docker run \ |
🔍 各参数详解
1. `docker run`
- 作用:启动一个新的容器。
- 说明:这是 Docker 的基础命令,用于从镜像创建并运行一个容器。
2. `-e 'ACCEPT_EULA=Y'`
- 作用:设置环境变量,表示接受 Microsoft SQL Server 的最终用户许可协议(EULA)。
- 说明:如果不设置这个变量,SQL Server 容器将不会启动。
3. `-e 'MSSQL_SA_PASSWORD='`
- 作用:设置 SQL Server 的系统管理员账户(
sa)密码。 - 注意:
- 密码必须满足 SQL Server 的复杂性要求(至少 8 字符、大小写字母、数字和符号)。
<password>需要替换为你自己的强密码。
4. `-p 1433:1433`
- 作用:端口映射,将主机的 1433 端口映射到容器内部的 1433 端口。
- 说明:
- SQL Server 默认监听端口是 1433。
- 这样你就可以通过
localhost:1433或服务器 IP 地址访问 SQL Server。
5. `-v /data:/var/opt/mssql/data`
- 作用:将主机上的目录挂载为容器内的 SQL Server 数据文件存储路径。
- 说明:
/var/opt/mssql/data是 SQL Server 存放数据库.mdf和.ldf文件的位置。- 使用
-v挂载可以实现数据持久化,即使容器被删除,数据也不会丢失。
6. `-v /log:/var/opt/mssql/log`
- 作用:挂载日志目录。
- 说明:
- 用于持久化 SQL Server 的错误日志和其他日志信息。
- 方便调试和查看运行时的日志内容。
7. `-v /secrets:/var/opt/mssql/secrets`
- 作用:挂载密钥目录。
- 说明:
- SQL Server 在此目录中存储加密密钥等敏感信息。
- 如果你不挂载这个卷,每次重新创建容器时,密钥会重置,可能导致数据库无法正确恢复。
8. `-d`
- 作用:以“分离模式”运行容器(后台运行)。
- 说明:容器将在后台运行,不会占用当前终端。
9. `mcr.microsoft.com/mssql/server:2022-latest`
- 作用:指定使用的镜像及其标签。
- 说明:
- 这是官方提供的 SQL Server for Linux 容器镜像。
2022-latest表示使用 SQL Server 2022 的最新版本。- 你可以根据需要换成其他版本,如
2019-latest、2022-GA等。
🧠 总结与建议
| 功能 | 是否推荐 |
|---|---|
| 接受 EULA | ✅ 必须 |
| 设置 SA 密码 | ✅ 必须 |
| 映射端口 | ✅ 必须 |
| 持久化数据 | ✅ 强烈推荐 |
| 持久化日志 | ✅ 推荐 |
| 持久化 secrets | ✅ 推荐(尤其用于生产或长期运行) |
💡 示例替换后的完整命令(请修改路径和密码)
1 | docker run \ |




