我有点进退两难
我得到了一个运行在 Windows Server 2016 上的虚拟机,并安装了 Docker Enterprise。我的管理层希望在此 VM 中运行的 Windows 容器上使用带有 docker 的 SQL Server 2019。这是一个POC项目。VM 没有任何 Internet 连接,因此我无法从 docker hub 中提取基本映像。我知道有可用的 SQL Server 2017 开发人员版本。可以做些什么来确保我可以在这种情况下继续使用容器?特别是当虚拟机没有任何互联网连接时?
我尝试在运行 Windows 10Pro 的本地计算机上下载 SQL Server 2017 Developer 版本,然后将容器映像移动到 VM 上。但是当我尝试加载容器时,我收到一条错误消息,提示“主机操作系统不匹配”。那是当我找到下面的网站时
请建议我如何在这种情况下创建图像
在撰写本文时,SQL Server 2019 Windows 容器仍处于预览阶段。如果您未加入 Early Adopter 计划,则可以从 Windows Server Core 基础映像开始创建自定义映像,然后安装 SQL Server 2019(以及可选的 CU)以创建自定义映像。
构建最容易在具有 Internet 连接的机器上完成,以从公共复制中提取基本 OS 映像。然后,您可以在没有 Internet 连接的情况下将图像复制到计算机(或将其推送到本地私有复制器)并从那里运行它。或者,拉取、保存和加载操作系统映像(步骤 6-8)并在服务器上运行构建。
以下是执行此操作的一般步骤的示例。我对格式的道歉。我受到挑战。
在您的 Windows 机器上创建一个空目录(例如 C:\dockerfiles)
在该目录中创建一个包含以下内容的 dockerfile
在构建目录中创建 start.ps1 文件(例如 C:\dockerfiles\start.ps1)。下面是一个类似于我使用的示例脚本。
将文件从 SQL 2019 安装媒体复制到安装子目录(例如 C:\dockerfiles\setup)
在构建目录(例如 C:\dockerfiles)的竞赛中运行 docker build 来构建和标记自定义镜像
将图像保存到 tar 文件
将图像复制到 Windows 服务器
从 Windows 服务器机器上的 tar 文件加载图像:
运行图像的示例
请注意,生产中尚不支持 Windows 容器,除非您加入 EA 预览版,否则您目前只能使用 SQL 2019 映像。