Docker安装SQL Sever

https://www.microsoft.com/en-us/sql-server/sql-server-downloads

部署

  1. 拉取镜像
docker pull mcr.microsoft.com/mssql/server:2022-latest
  1. 运行容器
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_COLLATION=Chinese_PRC_90_CI_AS" -e "MSSQL_SA_PASSWORD=ChenDaDliu2023" -p 1433:1433 --name sql1 --hostname sqlServer --privileged -d mcr.microsoft.com/mssql/server:2022-latest

 

参数说明
-e "ACCEPT_EULA=Y" 将 ACCEPT_EULA 变量设置为任意值,以确认接受最终用户许可协议。 SQL Server 映像>的必需设置。
-e "MSSQL_SA_PASSWORD=YourStrong@Passw0rd" 指定至少包含 8 个字符且符合密码策略的强密码。 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 sql1 为容器指定一个自定义名称,而不是使用随机生成的名称。 如果运行多个容器,则无法重复使用相同的名称。
--hostname sql1 用于显式设置容器主机名。 如果未指定主机名,则主机名默认为容器 ID,这是随机生成的系统 GUID。
-d  
mcr.microsoft.com/mssql/server:2022-latest SQL Server Linux 容器映像。

如果Docker容器启动报WARNING: IPv4 forwarding is disabled. Networking will not work
解决方法

打开sysctl配置文件 vim /etc/sysctl.conf 添加如下代码 net.ipv4.ip_forward=1 重启network服务 systemctl restart network 查看是否修改成功 sysctl net.ipv4.ip_forward 查看运行的容器 docker ps -a 运行成功应该会看到与下面类似的输出: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d4a1999ef83e mcr.microsoft.com/mssql/server:2022-latest "/opt/mssql/bin/perm..." 2 minutes ago Up 2 minutes 0.0.0.0:1433->1433/tcp, :::1433->1433/tcp sql1 4.如果运行不成功,通过以下命令查看docker容器内错误日志 docker exec -t sql1 cat /var/opt/mssql/log/errorlog | grep connection 5.删除容器 docker stop sql1 docker rm sql1

__EOF__

本文作者忧伤恋上了快乐
本文链接https://www.cnblogs.com/x666-6/p/18102094.html
关于博主:编程小萌新一名,希望从今天开始慢慢提高,一步步走向技术的高峰!
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   忧伤恋上了快乐  阅读(134)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示