Докер: Java не может разрешить IP-адрес хоста - PullRequest
0 голосов
/ 27 июня 2018

Задача

Я создаю образ, содержащий всю платформу Oracle Commerce Guided Search , поскольку можно успешно построить образ, содержащиеся в нем процессы Java не смогут работать из-за следующего исключения будучи поднятым:

Exception in thread "main" java.lang.RuntimeException: java.net.UnknownHostException:37863d1a232e: System error
    at com.endeca.itl.service.ServiceLocator.getService(ServiceLocator.java:226)
    at com.endeca.itl.component.manager.cmd.task.ComponentManagerTask.getManager(ComponentManagerTask.java:69)
    at com.endeca.itl.component.manager.cmd.task.DeleteComponentInstanceTask.process(DeleteComponentInstanceTask.java:71)
    at com.endeca.itl.cmd.BaseCmd.run(BaseCmd.java:464)
    at com.endeca.itl.component.manager.cmd.ComponentManagerCmd.main(ComponentManagerCmd.java:99)
Caused by: java.net.UnknownHostException: 37863d1a232e: System error
    at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method)
    at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:928)
    at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1323)
    at java.net.InetAddress.getAllByName0(InetAddress.java:1276)
    at java.net.InetAddress.getAllByName(InetAddress.java:1192)
    at java.net.InetAddress.getAllByName(InetAddress.java:1126)
    at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:44)
    at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:102)
    at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:314)
    at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:363)
    at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:219)
    at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:195)
    at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:85)
    at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:108)
    at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:186)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106)
    at com.endeca.itl.util.UrlUtils.ping(UrlUtils.java:180)
    at com.endeca.itl.util.UrlUtils.ping(UrlUtils.java:149)
    at com.endeca.itl.service.ServiceLocator.getService(ServiceLocator.java:217)
    ... 4 more

При рассмотрении исключения становится ясно, что для имени хоста задано значение: 37863d1a232e .

Exception in thread "main" java.lang.RuntimeException: java.net.UnknownHostException: 37863d1a232e: System error

Если я проверяю OS $ HOSTNAME, я получаю следующий вывод:

[root@37de552fbd05 bin]# echo $HOSTNAME
37de552fbd05

То же самое, что показано в / etc / hosts /:

[root@37de552fbd05 bin]# cat /etc/hosts/
127.0.0.1       localhost
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.2      37de552fbd05

Но это не то, что показано в исключении.

Что я пытался обойти проблему?

  1. Я использовал флаг --hostname как --hostname = localhost
  2. Я попытался решить эту проблему: 32537977

Факты

  1. Я использую Mac OS (High Sierra, 10.13.5) в качестве хост-машины.
  2. Редакция сообщества Docker (Engine: 18.03.1-ce) используется для создания образа Docker.
  3. Виртуальная ОС - oraclelinux: 7,2
  4. К сожалению, мне не удалось выполнить обходные пути, упомянутые выше.

К сожалению, я не добился успеха.

Вопросы

В чем может быть причина этого?

Источники

  1. Dockerfile
...