大家熟悉SQL Server可以安装在Windows系统上,我也介绍了SQL Server可以安装在LInux上,那么今天我将给大家介绍SQL Server安装在Docker上成为容器快速运行起来

首先需要创建一台CentOS

clip_image001

指定虚拟机名称,密码,以及资源组

clip_image002

大小我选择B2s

clip_image003

配置该虚拟机的参数,存储帐户,虚拟网络,以及子网,该虚拟机的公网IP地址为动态,网络安全组开放22端口

clip_image004

新建诊断存储帐户

clip_image005

创建虚拟机

clip_image006

为该虚拟机设置一个Azure上的DNS解析名称sqlondocker.eastasia.cloudapp.azure.com

clip_image007

虚拟机创建完成以后,就可以用SSH连接登陆了

clip_image008

老规矩,还是先设定Root密码并切换到root登陆

Sudo passwd root

[输入zjunsen密码]

[设置root新密码]

[再次输入设置的root新密码]

su -

[输入root密码]

clip_image009

接下来安装docker

clip_image010

安装完成以后,因为是演示,这里我就关闭SEliinux和防火墙

[root@SQLonDocker ~]# vim /etc/selinux/config

clip_image011

[root@SQLonDocker ~]# systemctl stop firewalld

[root@SQLonDocker ~]# systemctl disable firewalld

重启该虚拟机,然后重新登陆,切换到root帐户下,启动docker服务,并查看docker服务运行状态是否正常

clip_image012

OK,一切正常,接下来检查下docker的版本信息docker info或docker version,安装SQL Server on Docker需要具备如下三个条件

Docker引擎需要1.8以上版本;4G以上内存;4G以上可用磁盘空间

clip_image013

接下来搜索dcoker可以获取那些mssql的镜像

clip_image014

从docker hub取得SQL Server container imager镜像,因为镜像有点大,所以需要等待一会

clip_image015

下载完成以后可以看到image有1.43G

clip_image016

接下来就是运行第一个docker容器跑SQL Server了

docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=[设置sql server sa密码]' -p [指定虚拟机上的一个端口]:1433 -d microsoft/mssql-server-linux

docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=P@ssw0rd' -p 7001:1433 -d microsoft/mssql-server-linux

clip_image017

这样就创建好了第一个容器

clip_image018

那么现在可以通过该虚拟机的7001端口访问到这第一个SQL Server容器了

clip_image019

在Azure添加一条7001的TCP入站端口

clip_image020

接下来用SQL Server Management Studio连接访问试试

clip_image021

连接上了

clip_image022

既然第一个容器的SQL Server成功了,那么接下来我再创建3个运行SQL的容器

[root@SQLonDocker ~]# docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=P@ssw0rd' -p 11433:1433 -d microsoft/mssql-server-linux

[root@SQLonDocker ~]# docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=P@ssw0rd' -p 21433:1433 -d microsoft/mssql-server-linux

[root@SQLonDocker ~]# docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=P@ssw0rd' -p 31433:1433 -d microsoft/mssql-server-linux

也就几秒的时间,3个新的运行SQL的容器也OK了

clip_image023

记得在Azure上对这台虚拟机开放这些入站端口

clip_image024

连接试试看

clip_image025

演示完成以后,我就开始清理环境了

停止Stop所有的容器

# docker stop $(docker ps -a -q)

clip_image026

删除remove所有的容器

# docker rm $(docker ps -a -q)

clip_image027

最后对mssql-server-linux镜像进行删除

clip_image028

Docker上安装运行SQL Server容器就介绍到这了,感觉就是几条命令就可以快速构建出SQL的数据库环境还是很厉害的。