使用Docker运行SQLServer容器映像

本教程基于

  • Docker20.10.6
  • SQL Server2019
  • Docker Desktop(WSL2 Ubuntu18)
  • Microsoft SQL Server 文档

要求:

  • Docker引擎1.8以上

1. 拉取SQL Server2019容器镜像

sudo docker pull mcr.microsoft.com/mssql/server:2019-latest

运行docker images可查看现有镜像。

xc•~•»»docker images                                                                       
REPOSITORY                       TAG           IMAGE ID       CREATED       SIZE
mcr.microsoft.com/mssql/server   2019-latest   62c72d863950   7 weeks ago   1.49GB

2. 运行SQL Server2019容器映像

sudo docker run --name sqlserver2019\                                               
    -h sqlserver2019\
    -p 1433:1433\
    -e "ACCEPT_EULA=Y"\
    -e "SA_PASSWORD=MYpassword2019"\
    -d mcr.microsoft.com/mssql/server:2019-latest

参数说明:

  • name: 指定容器名称
  • -h: 指定容器ID
  • -p:端口映射 (主机端口:容器端口)
  • -e: SQL Server内部参数
    • -e “ACCEPT_EULA=Y”: 将 ACCEPT_EULA 变量设置为任意值,以确认接受最终用户许可协议。 SQL Server 映像的必需设置。
    • -e “SA_PASSWORD=MYpassword2019”:指定至少包含 8 个字符且符合 SQL Server 密码要求的强密码。 SQL Server 映像的必需设置。
  • -d: 容器镜像(REPOSITORY)

SQLserver 密码要求:

  • 密码不得包含用户的帐户名。
  • 密码长度至少为八个字符。
  • 密码包含以下四类字符中的三类:
  • 拉丁文大写字母 (A - Z)
  • 拉丁文小写字母 (a - z)
  • 10 个基本数字 (0 - 9)
  • 非字母数字字符,如感叹号 (!)、美元符号 ($)、数字符号 (#) 或百分号 (%)。
  • 密码可最长为 128 个字符。 使用的密码应尽可能长,尽可能复杂。

可以通过运行docker ps 查看正在运行的容器

在这里插入图片描述

3. 连接SQL Server2019 数据库容器

3.1 命令行工具-sqlcmd

1. 进入容器

sudo docker exec -it sqlserver2019 bash

2. 使用sqlcmd进行本地连接

/opt/mysql-tools -S localhost -U SA -P "MYpassword2019"

3.2 使用SSMS连接

在这里插入图片描述

3.3 使用 Navicat连接

在这里插入图片描述

4. 其它

4.1 更改SA密码

SA 帐户是安装过程中在 SQL Server 实例上创建的系统管理员。 创建 SQL Server 容器后,通过在容器中运行 echo $SA_PASSWORD,可发现指定的 SA_PASSWORD 环境变量。 出于安全考虑,请考虑更改 SA 密码。

sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \
   -S localhost -U SA -P "MYpassword2019" \
   -Q 'ALTER LOGIN SA WITH PASSWORD="MYnewPASSWORD2019"'

4.2 Docker基础

更多关于Docker的内容请点击此处:Docker入门

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值