用途:在 CI 中对 Azure SQL Database 容器(Private Preview,本地引擎)运行集成测试,适用于 GitHub Actions、Azure Pipelines 等流水线搭建。该镜像是本地 Azure SQL 引擎,不是 SQL Server 镜像 mcr.microsoft.com/mssql/server;SELECT SERVERPROPERTY('EngineEdition') 返回 5,Edition 返回 'SQL Azure'。
主要能力与关键规则:镜像为 sqldbpreview-dpgaeqhmgphzd4bk.azurecr.io/azure-sql/db-dev:latest(x64,linux/amd64),位于私有预览注册表,需用 ACR_USERNAME / ACR_PASSWORD 登录。必须设置 ACCEPT_EULA=Y 和复杂 MSSQL_SA_PASSWORD(8 位以上,含大小写、数字、符号),引擎监听 1433。引擎不会在连接时自动创建数据库,需先在 master 上执行 CREATE DATABASE appdb;master 仅用于预配。应用连接应在连接串中指定目标库(Database=appdb),不要用 USE 切换数据库(用户库会话会返回 Msg 40508)。镜像不执行 /docker-entrypoint-initdb.d/*.sql,需用 sqlcmd -d appdb -i seed.sql 播种。
使用方式:GitHub Actions 用 services 启动容器,健康检查在容器内运行 sqlcmd;单独步骤通过 docker exec 预配 appdb;测试通过 SQL_CONNECTION_STRING 指向 appdb。标准连接串:Server=localhost,1433;Database=appdb;User Id=sa;Password=<MSSQL_SA_PASSWORD>;TrustServerCertificate=true。非服务型运行器可用提供的启动脚本,循环等待就绪并预配 appdb。
限制:注册表与标签在预览期可能变动;非 x64 自托管运行器需加 --platform linux/amd64;不要用 SQL Server 镜像;不要要求运行器安装 sqlcmd。具体平台兼容与后续版本信息暂未提供。