Hi, we use testcontainers and have the problem with DockerInDocker scheme.
In case testcontainers could not found TINY_IMAGE locally it should try to pull it but it just throws exception.
Seems like the line
log.info("Docker host IP address is {}", strategy.getDockerHostIpAddress());
broke the initialization flow of DockerClientFactory cause the TINY_IMAGE will be pulled few lines below.
2017-03-24 16:11:58.586 DEBUG [packages-api,,,] 1807 --- [java-netty-1-40] .t.s.c.g.d.n.NettyDockerCmdExecFactory$1 : [id: 0x7abeb272, L:null - R:/var/run/docker.sock] RECEIVED: DefaultLastHttpContent(data: PooledSlicedByteBuf(ridx: 0, widx: 68, cap: 68/68, unwrapped: PooledUnsafeDirectByteBuf(ridx: 183, widx: 183, cap: 1024)), decoderResult: success), 68B
+-------------------------------------------------+
| 0 1 2 3 4 5 6 7 8 9 a b c d e f |
+--------+-------------------------------------------------+----------------+
|00000000| 7b 22 6d 65 73 73 61 67 65 22 3a 22 4e 6f 20 73 |{"message":"No s |
|00000010| 75 63 68 20 69 6d 61 67 65 3a 20 64 6f 63 6b 65 |uch image: xxxxxx|
|00000020| 72 2e 6d 6f 73 63 6f 77 2e 61 6c 66 61 69 6e 74 | xxxxxxxxxxxxxxx |
|00000030| 72 61 2e 6e 65 74 2f 61 6c 70 69 6e 65 3a 33 2e | xxxxx/alpine:3.5 |
+--------+-------------------------------------------------+----------------+
2017-03-24 16:11:58.586 ERROR [packages-api,,,] 1807 --- [java-netty-1-40] o.t.s.c.g.d.c.a.ResultCallbackTemplate : Error during callback
org.testcontainers.shaded.com.github.dockerjava.api.exception.NotFoundException: {"message":"No such image: xxxxxxxxxxxxxxxxxxx/alpine:3.5"}
at org.testcontainers.shaded.com.github.dockerjava.netty.handler.HttpResponseHandler.channelRead0(HttpResponseHandler.java:103) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.com.github.dockerjava.netty.handler.HttpResponseHandler.channelRead0(HttpResponseHandler.java:33) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:233) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:435) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:293) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:267) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:250) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:961) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe.epollInReady(EpollDomainSocketChannel.java:140) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:386) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:302) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:877) [testcontainers-1.2.0.jar:na]
at org.testcontainers.shaded.io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144) [testcontainers-1.2.0.jar:na]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_112]
Hi, we use testcontainers and have the problem with DockerInDocker scheme.
In case testcontainers could not found TINY_IMAGE locally it should try to pull it but it just throws exception.
Seems like the line
log.info("Docker host IP address is {}", strategy.getDockerHostIpAddress());broke the initialization flow of DockerClientFactory cause the TINY_IMAGE will be pulled few lines below.
Stacktrace: