在 Azure 上的 Ubuntu Docker 运行 SQL Server

沈云,资深工程师,微软解决方案专

SQL Server 不仅可以运行在linuxDocker ,可以运行在 Windows Server Container ,还可以运行在MACDocker,也就是说只要是Docker 引擎1.8+之上,不管你跑在什么系统上,都可以运行。

只要是Docker满足:

  • Docker Engine 1.8+
  • Minimum of 4 GB of disk space
  • Minimum of 4 GB of RAM

这就可以运行,运行的Image mssql-server-linux container image

下面我们就来体验下这个神奇的事情!

1. 首先我在Azure之上创建了一台Ubuntu16.04的虚拟机。

在 Azure 上的 Ubuntu Docker 运行 SQL Server

2. 测试需要远程连接数据库,将1430~1433防火墙打开:

在 Azure 上的 Ubuntu Docker 运行 SQL Server

3.在Linux中将Docker部署好,这个过程就不讲了。安装完成 运行 docker命令,有如下界面就证明成功了 

在 Azure 上的 Ubuntu Docker 运行 SQL Server

4. 从Docker Hub拿到SQL Server container image,镜像:

docker pull microsoft/mssql-server-linux

  • 1
  • 1

在 Azure 上的 Ubuntu Docker 运行 SQL Server

5. 由于镜像有点大,还是花了不少时间,如图有1.382G 

在 Azure 上的 Ubuntu Docker 运行 SQL Server

6. 镜像下载完成后,见证奇迹的时刻就要发生了。运行docker run
命令中 ‘ACCEPT_EULA=Y’ 是接受授权协议的意思,[email protected]这是sa的密码,-p 1430:1433,这是使用1430端口。

7. docker run -e 'ACCEPT_EULA=Y' -e '[email protected]' -p 1430:1433 -d microsoft/mssql-server-linux

8. docker run -e 'ACCEPT_EULA=Y' -e '[email protected]' -p 1431:1433 -d microsoft/mssql-server-linux

9. docker run -e 'ACCEPT_EULA=Y' -e '[email protected]' -p 1432:1433 -d microsoft/mssql-server-linux

10. docker run -e 'ACCEPT_EULA=Y' -e '[email protected]' -p 1433:1433 -d microsoft/mssql-server-linux

  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

在 Azure 上的 Ubuntu Docker 运行 SQL Server

11. 这样我就创建了4SQL Server5秒钟不到的时间。

在 Azure 上的 Ubuntu Docker 运行 SQL Server

12. 连接试试,使用SSMS连接。分别连接1430,1431,1432,1433端口,四个实例就连接成功了。

在 Azure 上的 Ubuntu Docker 运行 SQL Server

在 Azure 上的 Ubuntu Docker 运行 SQL Server

总结

利用Docker方法,可快速实现SQL 部署,这个确实很赞。可以想象以后进行测试,进行一些应用的部署,只需要敲几行代码,几秒钟就部署完成。具体运行在DockerSQL有什么用的功能,等正式发布之后,一定会有相应的文档详细介绍。这次测试主要测试如何运行在Docker。还有很多很有意思的东西,以后慢慢进行测试。

立即访问http://market.azure.cn