我已在Azure Ubuntu VM上安装了SQL Server 2019 docker。容器已启动并正在运行。但是,我无法从VM外部使用SSMS连接到它。运行容器时,我使用端口1450映射到1433。此外,我还配置了NSG以允许通信。 不过,我还是没有运气。
谢谢
答案 0 :(得分:0)
要通过Docker在Ubuntu上运行SQL Server,您可以按照以下步骤操作:
将Docker映像拉至您的Ubuntu主机:
docker pull mcr.microsoft.com/mssql/server:2019-CTP2.2-ubuntu
通过docker命令运行映像:
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=azureUser@2018' -p 1450:1433 -d --name mssql mcr.microsoft.com/mssql/server:2019-CTP2.2-ubuntu
检查容器是否运行良好,请通过docker命令执行此操作:
sudo docker exec -it mssql /opt/mssql-tools/bin/sqlcmd \
-S localhost -U SA -P '<YourStrong!Passw0rd>'
在与您的VM关联的NSG中打开端口1450
注意:如果在Ubuntu VM中打开防火墙,则还需要在防火墙中打开端口。
您可以在Microsoft SQL Server中找到Docker映像信息,以及有关Run && Connect the SQL Server image with Docker的更多详细信息。
更新:
当您检查NSG规则时,建议您可以进入VM网络,它会显示与子网和NIC关联的所有NSG。如果允许端口,则应将规则添加到两个NSG或将其更改为相同的NSG,然后可以仅将规则添加到一个NSG。检查NSG规则,如下所示: