rsync通过ssh找不到大写远程主机(Docker中的其他容器)

我在主机上运行docker集装箱,他们都在一个桥梁networking。 我正在使用rsync来在它们之间传输数据。 我有CamelCase容器名称。 从Java应用程序通过REST连接到其他具有这些名称的运行容器,我没有问题,但rsync / ssh无法处理它们。

root@container-id:/# rsync -av /sourceFolder user@CamelCaseContainer:/targetFolder ssh: Could not resolve hostname camelcasecontainer: Name or service not known rsync: connection unexpectedly closed (0 bytes received so far) [sender] 

所以无论什么原因,它将主机名改为小写,当然这样也找不到远程机器。 如果我想连接到名称中没有大写字母的容器,则一切正常。 (我的图像有一个Debian基础层,Docker主机是Ubuntu。)

这是为什么?

OpenSSH正试图使用​​DNS将主机名parsing为IP地址,并且不区分大小写 。

这取决于哪些服务正在parsing您的DNS名称,但最有可能会有一些错误。 OpenSSH做到了预期的方式。