OSDir


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: host not found when using http4 in docker container


Are both containers in the same network in the docker compose file?
On 5 Jun 2018, 19:29 +0200, Tim Dudgeon <tdudgeon.ml@xxxxxxxxx>, wrote:
> I'm running camel inside a Docker container and trying to use the HTTP4
> component to post a request to a service running in a different
> container (both containers are managed through Docker compose).
> Essentially I'm trying to do a post to a route like this:
> http4:coreservices:8080/coreservices/rest/v1/services
> where coreservices is the name of the other container.
>
> This fails with a  java.net.UnknownHostException (see below).
> But the other container is definitely accessible from this container as
> if I open a shell in it I can the curl the 'coreservices' host.
>
> Any idea what's going wrong here?
>
> Thanks
> Tim
>
>
> 05-Jun-2018 17:09:34.667 SEVERE [localhost-startStop-1]
> org.apache.camel.util.CamelLogger.log Failed delivery for (MessageId:
> ID-4b81ce1e6383-46459-1528218572076-1-3 on ExchangeId:
> ID-4b81ce1e6383-46459-1528218572076-1-2). Exhausted after delivery
> attempt: 1 caught: java.net.UnknownHostException: coreservices: Name or
> service not known
>
> Message History
> ---------------------------------------------------------------------------------------------------------------------------------------
> RouteId              ProcessorId Processor Elapsed (ms)
> [route6            ] [route6            ]
> [direct://post-service-descriptors ] [       283]
> [route6            ] [log1              ] [log ] [         5]
> [route6            ] [process1          ] [Processor@0xa8e9d5 ] [       173]
> [route6            ] [to1               ]
> [http4:coreservices:8080/coreservices/rest/v1/services ] [        95]
>
> Stacktrace
> ---------------------------------------------------------------------------------------------------------------------------------------
>  java.net.UnknownHostException: coreservices: Name or service not known
>     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:45)
>     at
> org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:111)
>     at
> org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
>     at
> org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
>     at
> org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
>     at
> org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
>     at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
>     at
> org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
>     at
> org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
>     at
> org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
>     at
> org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
>     at
> org.apache.camel.component.http4.HttpProducer.executeMethod(HttpProducer.java:306)
>     at
> org.apache.camel.component.http4.HttpProducer.process(HttpProducer.java:178)
>     at
> org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
>     at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)
>     at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)
>     at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)
>     at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)
>     at org.apache.camel.processor.Pipeline.process(Pipeline.java:120)
>     at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)
>     at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)
>     at
> org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:62)
>     at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)
>     at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:97)
>     at
> org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:529)
>     at
> org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:497)
>     at
> org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:365)
>     at
> org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:497)
>     at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:242)
>     at
> org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:148)
>     at
> org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:156)
>     at
> org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:173)
>     at
> org.apache.camel.impl.DefaultProducerTemplate.requestBody(DefaultProducerTemplate.java:305)
>
>