我正在努力将Docker集成到我们的TeamCity构建过程中,以便我可以创建一个运行“ docker构建”的任务,以根据我们的代码创建映像。现在,我们所有的构建代理都可以在Windows Server 2008或Windows Server 2012上运行,而这两个都不能运行Docker。我们有机会获得一台Windows Server 2016构建计算机的许可证,但是我想知道是否有一种方法可以在发出 docker 命令的同时在那计算机上运行Docker Engine从其他构建代理。
这是我到目前为止所考虑的:
除了我们将所有构建代理升级到Windows 10或Windows Server 2016之外,我还有什么想念的,还是我很不幸?
答案 0 :(得分:2)
您可以从其他构建代理开始使用远程Windows Server 2016实例。
Docker允许通过tcp公开Docker引擎(又名Daemon)。在这种情况下,尤其是当主机可公开访问时,您应该考虑使用客户端/服务器证书配置身份验证。可以在官方文档https://docs.docker.com/engine/security/https/中找到详细信息,但是您可以在https://stefanscherer.github.io/protecting-a-windows-2016-docker-engine-with-tls/上找到Windows Server上的特定文章。
关于使用客户端连接到远程Docker Engine的方面,请使用https://docs.docker.com/engine/reference/commandline/cli/中所述的-H tls://<host>:<port>
参数(或参见https://stefanscherer.github.io/protecting-a-windows-2016-docker-engine-with-tls/#testtlsconnection中提供的示例)。 / p>