0

我正在尝试将我们基于 Tomcat 的 Windows 应用程序之一移植到 Windows Nano Server 容器。安装过程包括两个 Windows 服务安装 - 一个 ActiveMQ 服务和另一个 Tomcat 服务。这是使用随产品提供的两个批处理文件来实现的。除了安装服务之外,它们还传递了几个与 JVM 有关的参数。现在我面临的问题是我无法在 Nano Server 上安装这些服务。相同的 Dockerfile 完美运行,并将产品安装在 Windows Server Core Container 上。

观察:通过批处理文件安装的服务依赖于两个系统组件 - Winsock 的辅助功能驱动程序(服务名称:afd)和 TCP/IP 协议驱动程序(服务名称:tcpip)。这是我在检查服务属性时在安装了产品的 VM 上发现的。我看到它们在 Nano Server 容器中不存在,但在 Windows Server Core 容器中存在。这可能是一个原因吗?如果是,有什么方法可以让这些服务在 Nano Server 上运行?

我不知道如何解决这个问题。Nano Server Container 在 Windows 服务方面是否有任何限制?

4

1 回答 1

1

考虑从头开始构建您的 docker 容器,

  • 确定并设置您的先决条件
  • 首先安装所有依赖项
  • 安装有问题的应用程序和服务

(有关其他信息,您可以查看此 wiki页面。)

Nano 服务器容器很小,缺少许多 Windows 默认服务,您必须自己通过 Dockerfile 构建其中的大部分。

最简单的方法是在 Nano 服务器上手动执行此操作,并确认 docker 容器/映像中的所有内容都可以正常工作,然后生成自动构建。

于 2017-12-26T11:11:06.987 回答