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容器出现故障,要删掉重新部署的话,物理路径下的数据库文件,还是会在那里的。

技术之路,学无止境!

Centos7 使用Docker 部署mssql 2017的更多相关文章

  1. Centos7借助docker部署mysql,提供远程链接服务

    Centos7 借助docker部署mysql,并提供远程连接服务 安装docker 运行docker 注意安装docker和运行docker的步骤很简单,可以参考我学习docker的笔记 docke ...

  2. 使用Docker部署MSSQL

    部署MSSQL需要2G内存 1.下载镜像 docker pull microsoft/mssql-server-linux 使用该命令就可以把数据库的docker镜像下载下来. 2.创建并运行容器 d ...

  3. centos7使用docker部署gitlab-ce-zh应用

    1.国内拉取镜像比较慢,所以这里采用DaoCloud源. # curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http ...

  4. ubuntu 16.0.4 中docker 部署 sqlserver 2017(四)

    1. 从 Docker Hub 中拉出 SQL Server 2017 Linux 容器映像 sudo docker pull mcr.microsoft.com/mssql/server:2017- ...

  5. Centos7搭建Docker部署LNMP

    1.首先呢先更新yum源 yum update 2.1.安装docker存储库 yum install -y yum-utils \ device-mapper-persistent-data \ l ...

  6. centos7下docker 部署javaweb

    LXC linux container 百度百科:http://baike.baidu.com/link?url=w_Xy56MN9infb0hfYObib4PlXm-PW02hzTlCLLb1W2d ...

  7. 使用 docker 部署常用的开发环境

    使用 docker 部署常用的开发环境 Intro 使用 docker,很多环境可以借助 docker 去部署,没必要所有的环境都在本地安装,十分方便. 前段时间电脑之前返厂修了,回来之后所有的软件都 ...

  8. docker stack 部署 mssql

    =============================================== 2019/12/8_第1次修改                       ccb_warlock == ...

  9. 阿里云服务器centos7,docker部署mysql+Redis+vue+springboot+Nginx+fastdfs,亲测可用

    一.购买云服务器 我是今年双十一期间在阿里云购买的服务器, 简单配置2核_4G_40G_3M,三年用了不到800块,不过当时我记得腾讯云更便宜,个人感觉,阿里的云服务器更加的稳定, 毕竟身经百战, 经 ...

随机推荐

  1. Linux中两个重要的基础服务

    本文服务器基于centos7,客户端Windows10 FTP FTP(File Transfer Protocol),文件传输协议,是一个比较古老的基于TCP,用于不同计算机间传递文件的协议. 安装 ...

  2. windows下RocketMQ安装部署

    一.预备环境 1.系统 Windows 2. 环境 JDK1.8.Maven.Git 二. RocketMQ部署 1.下载 1.1地址:http://rocketmq.apache.org/relea ...

  3. 实验四:划分多个VLAN

    1.配置图 2.配置命令 Switch1.Switch2.Switch3的配置是一样的,如下所示:(可直接复制交换机,可以只配置一次) 通过命令查看配置: Switch0的配置如下: 通过命令查看tr ...

  4. linux ftp 服务器 ,web 服务器 配置

    ftp服务器配置: 1:vsftpd.conf 2;vsftpd.ftpusers 3:vsftpd.user_list web服务器配置: apache 配置

  5. 使用C++进行声明式编程

            声明式编程(英语:Declarative programming)是一种编程范型,与命令式编程相对立.它描述目目标性质,让计算机明白目标,而非流程.声明式编程不用告诉电脑问题领域,从而 ...

  6. Java基础系列1:Java基本类型与封装类型

    Java基础系列1:Java基本类型与封装类型 当初学习计算机的时候,教科书中对程序的定义是:程序=数据结构+算法,Java基础系列第一篇就聊聊Java中的数据类型. 本篇聊Java数据类型主要包括两 ...

  7. [校内训练20_01_22]ABC

    1.给出序列A,求序列B,使得bi|ai,lcm(b1,b2,...,bn)=lcm(a1,a2,...,an)且字典序最小. 可以发现,对于某个质数p,它有一个最大的次数k,将pk放在尽可能靠后且能 ...

  8. Linux中inode详解

    转自:https://www.cnblogs.com/itech/archive/2012/05/15/2502284.html 一.inode是什么? 理解inode,要从文件储存说起. 文件储存在 ...

  9. Cassandra2.2.10安装过程

    1. 2.安装JVM 3.OS环境配置: 关闭防火墙:service iptables stop vi /etc/sysctl.conf vm.zone_reclaim_mode=0 vm.max_m ...

  10. Java博客专栏

    1. Java23种设计模式 2. JVM虚拟机 3. 设计模式6大原则 4. Java代码性能优化总结 5. 三种代理 6. iText操作PDF 7. 解析XML的4种方式 8. 面向对象思想 9 ...