首页 > 解决方案 > docker 容器中的 SQL Server 配置管理器

问题描述

我在 Windows 容器中运行 SQL Server。有没有办法为 Docker 容器运行 SQL Server 配置管理器?

标签: sql-serverdockerdocker-for-windows

解决方案


如果您使您的 docker 容器可以通过网络访问,那么您可以像访问远程计算机一样访问它,并且正如Microsoft 文档中所述,您可以为远程计算机运行 SQL Server 配置管理器。

为了让你的容器可以通过网络访问,你应该将它的一个端口映射到你主机上的一个端口,并在--network host模式下运行它:

docker run -d -p 8000:1433 --network host --name my_container my_image

解释:

-d:以分离模式运行容器,即在后台运行

-p 8000:1433: 将容器的 1433 端口映射到主机的 8000 端口(主机优先)

(1433 是 SQL Server 的默认端口)

--network host:不将容器网络与主机隔离,这使得它可以从外部世界访问参见更新

--name some_name: 命名你的容器以便于使用

my_image:容器应该基于的图像的名称。

以这种方式运行容器后,您可以访问它localhost:8000

之后,按照 Microsoft 文档(此处)的说明进行操作


更新: 根据docker docs,一些网络功能(即--network host)在 windows 版本中不起作用,但显然你不需要它,因为我们只需要从主机访问容器,而不是从外部世界。只需删除它并尝试它。


推荐阅读