解决SQL Server 安装运行时针对宿主机内存不足2GB的场景

一、官方轻量镜像(推荐,小于2GB)

微软提供的基于 Ubuntu 的 Linux 版 SQL Server 镜像,体积远小于 Windows 容器版,核心版本大小如下:

镜像版本 典型大小 拉取命令
SQL Server 2017 约1.33GB docker pull mcr.microsoft.com/mssql/server:2017-latest
SQL Server 2019 约1.5GB docker pull mcr.microsoft.com/mssql/server:2019-latest
SQL Server 2022 约1.7GB docker pull mcr.microsoft.com/mssql/server:2022-latest

这类镜像为官方维护,功能完整、兼容性强,适合开发/测试及生产环境,均满足小于2GB的体积要求,启动时仅需注意官方内存要求(默认检测宿主机≥2GB物理内存)。

二、第三方超小镜像(绕过内存限制,体积相近)

针对宿主机内存不足2GB的场景,社区提供了优化镜像,核心方案为 justin2004/mssql_server_tiny

  • 核心特点 :通过重定义 sysinfo 系统调用,绕过 SQL Server 启动时的2GB内存检测,可在低内存环境运行,镜像体积与官方版基本一致(<2GB),功能无阉割。·
    • 拉取命令

      docker pull justin2004/mssql_server_tiny:2019-latest

下载加速

复制代码
docker pull docker.1ms.run/justin2004/mssql_server_tiny:latest
  • 快速启动命令

    bash 复制代码
    docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=你的强密码' -p 1433:1433 -d justin2004/mssql_server_tiny
  • 注意 :该镜像为社区维护,不建议用于生产环境,仅适合本地开发/测试场景。

三、补充说明

  1. 内存与镜像体积的区别 :SQL Server 启动时的2GB是宿主机物理内存检测阈值,并非镜像体积,官方 Linux 镜像体积本身就低于2GB,无需担心磁盘占用过高。
  2. Windows 容器版不推荐:Windows 基础镜像体积大,SQL Server Windows 容器版通常≥10GB,远超过2GB,优先选择 Linux 版。
  3. Azure SQL Database Edge :微软针对 IoT/边缘场景推出的轻量版,内存占用可低于500MB,镜像体积更小,适合资源极致受限的环境,可通过 mcr.microsoft.com/azure-sql-edge 拉取。
相关推荐
金山几座10 小时前
C#学习记录-类(Class)
开发语言·学习·c#
The Shio13 小时前
OptiByte:一个可视化协议设计与多语言代码生成工具
网络·物联网·c#·.net·业界资讯
我是唐青枫14 小时前
C#.NET Pipelines 深入解析:高性能 IO 管道与零拷贝协议处理实战
c#·.net
蓝天星空14 小时前
跨平台开发语言对比
开发语言·c#·.net
阿蒙Amon14 小时前
C#常用类库-详解JetBrains.Annotations
前端·数据库·c#
gaozhiyong081315 小时前
SpringBoot连接多数据源MySQL、SqlServer等(MyBatisPlus测试)
spring boot·mysql·sqlserver
老鱼说AI15 小时前
《深入理解计算机系统》(CSAPP)2.2:整数数据类型与底层机器级表示
开发语言·汇编·算法·c#
历程里程碑17 小时前
40 UDP - 2 C++实现英汉词典查询服务
linux·开发语言·数据结构·c++·ide·c#·vim
阿蒙Amon17 小时前
C#常用类库-详解Polly
开发语言·c#
唐青枫18 小时前
C#.NET stackalloc 深入解析:栈上分配、Span 配合与使用边界
c#·.net