踩了很多坑,来记录一下
首先说sqlserver
1. 安装docker要使用centos 7以上版本,使用centos 6及以下版本会出现各种问题
2. docker CE安装过程
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo #建立仓库
$ sudo yum install docker-ce #安装docker
$ sudo systemctl start docker #开启docker
3. 从 Docker Hub 中拉出 SQL Server 2017 Linux 容器映像
$ sudo docker pull microsoft/mssql-server-linux:2017-latest
4. 显示所有可用的镜像
$ docker images
5. 运行一个镜像(也就相当于使用已有的镜像创建一个实例)
$ sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -p 1401:1433
-v <local directory>:/var/opt/mssql
--name sql1 -d microsoft/mssql-server-linux:2017-latest
____________________________________________________分割线_______________________________________
其中ACCEPT_EULA=Y的意思是同意许可协议,必选;MSSQL_SA_PASSWORD为密码,要求是最少8位的强密码,要有大写字
母,小写字母,数字以及特殊符号,不然会有一个大坑(docker启动sqlserver容器后过几秒就停止了);
-p 1401:1433 绑定端口,其中1401是主机的端口,1433是docker内部SQLserver的端口,我们使用1401端口的时候会
自动映射到docker内部的1433端口
6. (可选)使用sqlcdm连接,这里插播一下sqlcmd的安装
首先下载yum的repo:
$ wget https://packages.microsoft.com/config/rhel/7/prod.repo
$ mv prod.repo /etc/yum.repos.d/
$ yum makecache
安装
$ yum install mssql-tools
测试连接:
$ sqlcmd -S localhost -U SA -P 你设置的密码
SA为SQLserver的原始账户
7. (可选)使用Navicat Premium(图形化界面)连接
一定要注意,端口号跟IP地址之间是使用的逗号分割,而不是冒号,这个真的是太坑了,搞了我一天时间
正确输入之后就可以连接成功了
不过docker真是好用啊!
来源:oschina
链接:https://my.oschina.net/u/4395975/blog/3968203