Centos7 使用Docker 部署mssql 2017
mssql是.NET的标配,一般使用.NET的人基本都用mssql。
以前mssql只能支持windows平台,从微软打出 拥抱开源 的口号开始,mssql的2017 版本,开始支持linux系统。
一开始,我是直接在centos中安装mssql的,总的来说,比windows快很多。但是现在都使用容器技术,docker也确实给人带来很多方便。
所以,我也弃用原有的直接在系统安装的方式,在linux中安装docker。并使用docker安装mssql。
全程非常简单,简化了很多工作。只需要一条命令即可完成。你也可以参照官方文档:
https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-docker?view=sql-server-ver15&pivots=cs1-bash
或者到docker hub中找到对应的帮助:
https://hub.docker.com/_/microsoft-mssql-server
执行这个命令:
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=yourStrong(!)Password' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2017-latest
即可正常安装。
重点来了,数据文件存放在哪?
装完之后,我们的数据文件是存放在容器内部的,要物理备份,比较麻烦,而且如果不小心,把容器删除了,数据文件也就没有了。
所以,要在命令里,加多一个选项:
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=yourStrong(!)Password' -v /home/db_data:/var/opt/mssql -p 1433:1433 -d mcr.microsoft.com/mssql/server:2017-latest
就是这个:-v /home/db_data:/var/opt/mssql,在容器内加一个数据卷,其中/var/opt/mssql是容器内数据库存放文件的目录,我们把这个目录映射到物理路径:/home/db_data 。
这样,你使用外部链接,创建数据库。就可以在物理路径:/home/db_data 下看到对应的文件。而且如果 mssql容器出现故障,要删掉重新部署的话,物理路径下的数据库文件,还是会在那里的。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库