当前位置: 首页 > article >正文

【已解决】MACOS M4 芯片使用 Docker Desktop 工具安装 MICROSOFT SQL SERVER

1. 环境准备

  1. 确认 Docker Desktop 配置

确保已安装 Docker Desktop for Mac (Apple Silicon)(版本 ≥ 4.15.0)。开启 Rosetta(默认开启):

打开 Docker Desktop → Settings → General → Virtual Machine Options → Choose Virtual Machine Manager,勾选 Use Rosetta for x86/amd64 emulation on Apple Silicon。

在这里插入图片描述

  1. 验证架构
uname -m  # 应输出 "arm64"

2. 拉取并运行 SQL Server 容器

使用官方 ARM64 镜像(推荐),Microsoft 已提供支持 ARM64 的 SQL Server 2022 镜像。

命令如下:

docker run -e "ACCEPT_EULA=Y" \-e "MSSQL_SA_PASSWORD=Met@20250605" \-p 1433:1433 \-v sqlserver-data:/var/opt/mssql \--name sqlserver \--privileged \--platform linux/arm64/v8 \mcr.microsoft.com/azure-sql-edge
  • -e “ACCEPT_EULA=Y”
    接受 SQL Server 的最终用户许可协议(EULA)。必须设置为 Y 才能启动容器,否则会报错退出。

  • -e “MSSQL_SA_PASSWORD=Met@20250605”
    设置系统管理员(SA)账户的密码。密码必须符合 SQL Server 的复杂度要求:

    • 至少 8 个字符
    • 包含大写字母、小写字母、数字和特殊字符
    • 不包含用户名或简单词汇
  • -p 1433:1433
    将宿主机的 TCP 端口 1433 映射到容器内的 1433 端口,使外部应用可以通过 localhost:1433 访问 SQL Server。

    • 左侧 1433:宿主机端口(可修改为其他端口,如 1434:1433)
    • 右侧 1433:容器内 SQL Server 默认监听端口
  • -v sqlserver-data:/var/opt/mssql
    创建一个名为 sqlserver-data 的 Docker 数据卷,并挂载到容器内的 /var/opt/mssql 目录。
    这确保了:

    • 数据库文件在容器重启后不会丢失
    • 避免容器内文件系统限制导致的性能问题
  • –name sqlserver
    为容器指定名称 sqlserver,方便后续管理(如 docker start sqlserver、docker logs sqlserver)。

  • –platform linux/arm64/v8
    显式指定容器使用 ARM64 架构的镜像。在 macOS M4(ARM 芯片)上必须设置,否则 Docker 可能尝试运行 AMD64 镜像并导致兼容性问题。

  • –privileged
    赋予容器完全访问主机设备的权限,相当于容器内的 root 用户。
    注意:

    • 仅用于调试,生产环境不应使用
    • 可解决部分权限相关问题(如 /proc 目录访问)
  • mcr.microsoft.com/azure-sql-edge
    指定使用 Azure SQL Edge 的官方 Docker 镜像。这是一个轻量级版本的 SQL Server,专为 IoT 和边缘计算优化,支持 ARM64 架构。

运行截图:
在这里插入图片描述
在这里插入图片描述

相关文章:

【已解决】MACOS M4 芯片使用 Docker Desktop 工具安装 MICROSOFT SQL SERVER

1. 环境准备 确认 Docker Desktop 配置 确保已安装 Docker Desktop for Mac (Apple Silicon)(版本 ≥ 4.15.0)。开启 Rosetta(默认开启): 打开 Docker Desktop → Settings → General → Virtual Machine Options …...

Quipus系统的视频知识库的构建原理及使用

1 原理 VideoRag在LightRag基础上增加了对视频的处理,详细的分析参考LightRag的兄弟项目VideoRag系统分析-CSDN博客。 Quipus的底层的知识库的构建的核心流程与LightRag类似,但在技术栈的选择和处理有所不同。Quipus对于视频的处理实现,与Vi…...

web3-去中心化金融深度剖析:DEX、AMM及兑换交易传播如何改变世界

web3-去中心化金融深度剖析:DEX、AMM及兑换交易传播如何改变世界 金融问题 1.个人投资:在不同的时间和可能的情况(状态)下积累财富 2.商业投资:为企业家和企业提供投资生产性活动的资源 目标:跨越时间和…...

国芯思辰|SCS5501/5502芯片组打破技术壁垒,重构车载视频传输链路,兼容MAX9295A/MAX96717

在新能源汽车产业高速发展的背景下,电机控制、智能驾驶等系统对高精度信号处理与高速数据传输的需求持续攀升。 针对车载多摄像头与自动驾驶辅助系统对长距离、低误码率、高抗干扰性数据传输的需求,SCS5501串行器与SCS5502解串器芯片组充分利用了MIPI A…...

【图像处理3D】:点云图是怎么生成的

点云图是怎么生成的 **一、点云数据的采集方式****1. 激光雷达(LiDAR)****2. 结构光(Structured Light)****3. 双目视觉(Stereo Vision)****4. 飞行时间相机(ToF Camera)****5. 其他…...

压敏电阻的选型都要考虑哪些因素?同时注意事项都有哪些?

压敏电阻,英文名简称VDR,电子元器件中重要的成员之一,是一种非线性伏安特性的电阻器件,有电阻特性的同时,也拥有其他自身的特性,广泛应用于众多领域。在电源系统、安防系统、浪涌抑制器、电动机保护、汽车电…...

用WPDRRC模型,构建企业安全防线

文章目录 前言什么是 WPDRRC 模型预警(Warning)保护(Protection)检测(Detection)响应(Response)恢复(Recovery)反击(Counterattack) W…...

使用 Amazon Q Developer CLI 快速搭建各种场景的 Flink 数据同步管道

在 AI 和大数据时代,企业通常需要构建各种数据同步管道。例如,实时数仓实现从数据库到数据仓库或者数据湖的实时复制,为业务部门和决策团队分析提供数据结果和见解;再比如,NoSQL 游戏玩家数据,需要转换为 S…...

Java应用服务在Kubernetes集群中的改造与配置

哈喽,大家好,我是左手python! 微服务架构与容器化 微服务架构的优势 微服务架构是一种将应用程序构建为一组小型独立服务的方法。每个服务负责完成特定的业务功能,并且可以独立地进行开发、部署和扩展。这种架构在Kubernetes环境…...

Linux 里 su 和 sudo 命令这两个有什么不一样?

《小菜狗 Linux 操作系统快速入门笔记》目录: 《小菜狗 Linux 操作系统快速入门笔记》(01.0)文章导航目录【实时更新】 Linux 是一个多用户的操作系统。在 Linux 中,理论上来说,我们可以创建无数个用户,但…...

「数据分析 - Pandas 函数」【数据分析全栈攻略:爬虫+处理+可视化+报告】

- 第 105 篇 - Date: 2025 - 06 - 05 Author: 郑龙浩/仟墨 Pandas 核心功能详解与示例 文章目录 Pandas 核心功能详解与示例1. 数据结构基础1.1 Series 创建与操作1.2 DataFrame 创建与操作 2. 数据选择与过滤2.1 基本选择方法2.2 布尔索引 3. 数据处理与清洗3.1 缺失值处理3.…...

JAVASCRIPT 简化版数据库--智能编程——仙盟创梦IDE

// 数据模型class 仙盟创梦数据DM {constructor(key) {this.key ${STORAGE_PREFIX}${key};this.data this.加载数据();}加载数据() {return JSON.parse(localStorage.getItem(this.key)) || [];}保存() {localStorage.setItem(this.key, JSON.stringify(this.data));}新增(it…...

YAML在自动化测试中的三大核心作用

YAML在自动化测试中的三大核心作用 配置中心:管理测试环境/参数 # config.yaml environments:dev: url: "http://dev.api.com"timeout: 5prod:url: "https://api.com"timeout: 10数据驱动:分离测试数据与脚本 # test_data.yaml lo…...

命名管道实现本地通信

目录 命名管道实现通信 命名管道通信头文件 创建命名管道mkfifo 删除命名管道unlink 构造函数 以读方式打开命名管道 以写方式打开命名管道 读操作 写操作 析构函数 服务端 客户端 运行结果 命名管道实现通信 命名管道通信头文件 #pragma#include <iostream> #include &l…...

iOS上传应用包错误问题 “Invalid bundle. The “UIInterfaceOrientationPortrait”“

引言 在开发 iOS 应用的整个生命周期中&#xff0c;打包上传到 App Store 是一个至关重要的步骤。每一次提交&#xff0c;Xcode 都会在后台执行一系列严格的校验流程&#xff0c;包括对 Info.plist 配置的检查、架构兼容性的验证、资源完整性的审查等。如果某些关键项配置不当…...

【LeetCode】1061. 按字典序排列最小的等效字符串(并查集)

LeetCode 1061. 按字典序排列最小的等效字符串 (中等) 题目链接&#xff1a;LeetCode 1061. 按字典序排列最小的等效字符串 (中等) 题目描述 给出长度相同的两个字符串s1 和 s2 &#xff0c;还有一个字符串 baseStr 。 其中 s1[i] 和 s2[i] 是一组等价字符。 举个例子&#…...

猎板厚铜PCB工艺能力如何?

在电子产业向高功率、高集成化狂奔的今天&#xff0c;电路板早已不是沉默的配角。当5G基站、新能源汽车、工业电源等领域对电流承载、散热效率提出严苛要求时&#xff0c;一块能够“扛得住大电流、耐得住高温”的厚铜PCB&#xff0c;正成为决定产品性能的关键拼图。而在这条赛道…...

Flutter快速上手,入门教程

目录 一、参考文档 二、准备工作 下载Flutter SDK&#xff1a; 配置环境 解决环境报错 zsh:command not found:flutter 执行【flutter doctor】测试效果 安装Xcode IOS环境 需要安装brew&#xff0c;通过brew安装CocoaPods. 复制命令行&#xff0c;打开终端 分别执行…...

算法:前缀和

1.【模版】前缀和 【模板】前缀和_牛客题霸_牛客网 这道题如果使用暴力解法时间复杂度为O(n*m)&#xff0c;会超时&#xff0c;所以要使用前缀和算法。 前缀和->快速求出数组中某一个连续区间的和。 第一步&#xff1a;预处理出一个前缀和数组 dp。 dp[i]表示[1, i] 区间…...

DEVICENET转MODBUS TCP网关与AB数据输出模块的高效融合方案研究

在工业自动化领域&#xff0c;多样化的设备通常采用不同的通信协议&#xff0c;这为系统集成带来了显著的挑战。特别是在需要将遵循DeviceNet协议的设备与基于MODBUS TCP协议的系统进行互连时&#xff0c;这一挑战尤为突出。AB数据输出作为一种功能卓越的DeviceNet分布式输入/输…...

牛客小白月赛113

前言&#xff1a;这场的E题补的我头皮都发麻了。 A. 2025 题目大意&#xff1a;一个仅有‘-’‘*’组成的字符串&#xff0c;初始有一个sum 1&#xff0c; 从左到右依次遍历字符串&#xff0c;遇到-就让sum--&#xff1b;遇到*就让sum* 2&#xff0c;问sum有没有可能大于等于…...

Mac版本Android Studio配置LeetCode插件

第一步&#xff1a;Android Studio里面找到Settings&#xff0c;找到Plugins&#xff0c;在Marketplace里面搜索LeetCode Editor。 第二步&#xff1a;安装对应插件&#xff0c;并在Tools->LeetCode Plugin页面输入帐号和密码。 理论上&#xff0c;应该就可以使用了。但是&a…...

电子电路基础1(杂乱)

电路基础知识 注意&#xff1a;电压源与电流源的表现形式 注意&#xff1a;在同一根导线上电势相等 电阻电路的等效变换 电子元器件基础 电阻...

rocketmq延迟消息的底层原理浅析

rocketmq延迟消息的底层原理 消息实体 延时消息是指允许消息在指定延迟时间后才被消费者消费 Apache RocketMQ 中&#xff0c;消息的核心实体类是 org.apache.rocketmq.common.message.Message public class Message implements Serializable {private String topic; …...

【openssl】升级为3.3.1,避免安全漏洞

本文档旨在形成 对Linux系统openssl版本进行升级 的搭建标准操作过程&#xff0c;搭建完成后&#xff0c;实现 openssl 达到3.3以上版本&#xff0c;避免安全漏洞 效果。 一、查看当前版本 版本不高于3.1的&#xff0c;均需要升级。 # 服务器上运行以下命令&#xff0c;查看…...

使用 HTML +JavaScript 从零构建视频帧提取器

在视频编辑、内容分析和多媒体处理领域&#xff0c;常常需要从视频中提取关键帧。手动截取不仅效率低下&#xff0c;还容易遗漏重要画面。本文介绍的视频帧提取工具通过 HTML5 技术栈实现了一个完整的浏览器端解决方案&#xff0c;用户可以轻松选择视频文件并进行手动或自动帧捕…...

基于若依前后分离版-用户密码错误锁定

sys_config配置参数 user.password.maxRetryCount&#xff1a;最大错误次数 user.password.lockTime&#xff1a;锁定时长 //SysLoginController//登录 PostMapping("/login") public AjaxResult login(RequestBody LoginBody loginBody) {AjaxResult ajax AjaxR…...

论文速读《DexWild:野外机器人策略的灵巧人机交互》

项目链接&#xff1a;https://dexwild.github.io/ 论文链接&#xff1a;https://arxiv.org/pdf/2505.07813 0. 简介 2025年5月&#xff0c;卡内基梅隆大学&#xff08;CMU&#xff09;发布了一篇突破性论文《DexWild: Dexterous Human Interactions for In-the-Wild Robot Pol…...

Bug问题

一、list 页面 import React, { useEffect, useState } from react; import { shallowEqual, useHistory, useSelector } from dva; import { Button, message } from choerodon-ui/pro; import formatterCollections from hzero-front/lib/utils/intl/formatterCollections; …...

【数据结构】5. 双向链表

文章目录 一、链表的分类1、双向链表的结构 二、双向链表的实现0、准备工作1、初始化2、打印3、尾插4、头插5、尾删6、头删7、查找8、在指定位置之后插入数据9、删除指定位置10、销毁 一、链表的分类 链表总共分为8种&#xff0c;具体的分组方式如图所示&#xff1a; 带头指的…...