whisklabs / docker-it-scala Goto Github PK
View Code? Open in Web Editor NEWDocker integration testing kit with Scala
License: MIT License
Docker integration testing kit with Scala
License: MIT License
It'll be reliable and developer friendly if there is CI configured.
This library is awesome for integration testing -- many thanks.
One thing that I have noticed is that most tests can run much faster if the docker tmpfs feature is used when running a container. For instance, on OSX one test went down from 40 seconds to 10 seconds when the database was run in tmpfs.
Using tmpfs is done through the HostConfig part of the docker API.
Would it be possible to support the tmpfs option in docker-it-scala?
Hi,
I'm trying to use your code for our project and I'm having trouble overriding the implicit val docker from trait DockerKit.
The thing is that we use our own server - http://mydockerrepo:4243 - and the tests work fine only when I run sbt with "export DOCKER_HOST=http://mydockerrepo:4243". In order to avoid this I tried to override it as follows:
class BackendITest extends FlatSpec with Matchers with BeforeAndAfterAll with GivenWhenThen with ScalaFutures with MyDockerCassandraService with DockerTestKit {
implicit lazy val pc = PatienceConfig(
timeout = scaled(Span(30, Seconds)),
interval = scaled(Span(150, Millis))
)
override implicit val docker: Docker = {
val dockerClientConfig = DockerClientConfig.
createDefaultConfigBuilder().
withUri("http://mydockerrepo:4243").
build()
new Docker(dockerClientConfig)
}
"cassandra container" should "be ready" in {
cassandraContainer.isReady().futureValue shouldBe true
}
}
But then I get NullPointerException in DockerContainerOps.getLogs - docker is null.
Am I doing something wrong?
Thanks in advance for your assistance.
Uri
I seems that current specs2 test kit only supports org.specs2.Specification
import org.specs2.mutable.{BeforeAfter, Specification}
trait MutableDockerTestKit extends BeforeAfter with DockerKit {
def before() = {
startAllOrFail()
}
def after() = {
stopAllQuietly()
}
}
//in your test:
class InfluxDBSpec(env: Env) extends Specification{
implicit val ee = env.executionEnv
"The influxdb container" should{
"be ready" in new MutableDockerTestKit with DockerInfluxDBService{
influxdbContainer.isReady() must beTrue.await
}
}
}
Seems fixed timeouts are a big reason of my #25 experience.
There seems to be a lot of them, and what exactly affects where is not necessarily clear for a newbie. Could the timeouts be taken to a resource.conf
so that applications could easily set them to their liking.
Edit: #25 wasn't about timeouts, but the reason for this issue remains. Would be nice to have a library config instead of magic timeouts. Note: I'm not against fixed numbers in code, as such. Only they need to be based on something, not just a thing that worked on 1 or 2 machines. I'll be looking at docker-it-scala again this week - able to prepare a PR if there's consensus configurable timeouts would be welcome.
Within development, we often break running tests simply by ctrl-c. It seems to me that docker-it-scala is not able to cope with this - I need to restart the docker container if I do this.
I wonder if this is "by design" or that there's nothing docker-it-scala can do about this, or if it is a bug that could be fixed? It is likely pushing me away from using docker-it-scala and simply running the services needed locally.
System: OS X, docker-machine 0.6.0, tests are using Kafka 0.9.0.1
I'm running into a NullPointerException that is fixed by 44ff5ac, it would be awesome if you could release a v0.9.0-M11 containing this change. Much appreciated!
It would be useful to have an ability for coordinated running of dependent containers
I am trying to run mysql:5.6 image with health check, but it always fails. My code:
trait DockerMySqlService extends DockerKit {
val MySqlAdvertisedPort = 3306
val Database = "database"
val User = "user"
val Password = "password"
val mySqlContainer = DockerContainer("mysql:5.6")
.withPorts((MySqlAdvertisedPort, Some(MySqlAdvertisedPort)))
.withEnv(
s"MYSQL_ALLOW_EMPTY_PASSWORD=yes",
s"MYSQL_DATABASE=$Database",
s"MYSQL_USER=$User",
s"MYSQL_PASSWORD=$Password")
.withReadyChecker(DockerReadyChecker.LogLineContains("MySQL entered RUNNING state"))
abstract override def dockerContainers: List[DockerContainer] =
mySqlContainer :: super.dockerContainers
}
trait Bootstrapper extends DockerMySqlService {
startAllOrFail()
}
any ideas?
Is it possible to create a container from a local dockerfile or a dockerfile from the classpath?
Looking at the code right now it seems it is not possible to do this (as far as I could see). But does the underlying docker java api provide a way for which a corresponding call could be added to the DockerContainerManager/DockerCommandExecutor to allow this? Maybe the https://github.com/docker-java/docker-java/blob/419900d074e6d9754dcd5c6290d93c3350bab010/src/main/java/com/github/dockerjava/api/command/BuildImageCmd.java ?
Setting .withVolumes(...)
does not work on Mac with SpotifyDockerFactory
SpotifyDockerCommandExecutor
seems to be missing a .volumes()
call on the Spotify ContainerConfig.Builder
there might also be other stuff missing
I enabled Logback in my project, for other reasons, and suddenly docker-it-scala started to through multiple pages of logs, whenever my tests run.
I would like to live without that (since things work) - where and how should I shut it up?
Version 0.9.1 on MacOS with docker-machine
It could be usefull sometimes not to map port to the host but use the container IP address directly to access the service exposed.
The problem I have is on my build & integration test server where several build can run at the same times resulting in conflict over the port mapped to the host. By not mapping port and using the container IP address directly would allow to have several instances of the same service available to the running jobs. Unfortunately I did not found a way using the docker-it-scala api to get a container IP address, only the mapped ports are available.
If you forget to set up the DOCKER_HOST
you get this error. This should probably fail with a more appropriate error.
And it should probably default to unix:///var/run/docker.sock
javax.ws.rs.ProcessingException: org.apache.http.conn.UnsupportedSchemeException: https protocol is not supported
at com.github.dockerjava.jaxrs.connector.ApacheConnector.apply(ApacheConnector.java:490)
at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:246)
at org.glassfish.jersey.client.JerseyInvocation$3.call(JerseyInvocation.java:705)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:424)
at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:701)
at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:417)
at org.glassfish.jersey.client.JerseyInvocation$Builder.get(JerseyInvocation.java:313)
at com.github.dockerjava.jaxrs.ListImagesCmdExec.execute(ListImagesCmdExec.java:35)
at com.github.dockerjava.jaxrs.ListImagesCmdExec.execute(ListImagesCmdExec.java:17)
at com.github.dockerjava.jaxrs.AbstrDockerCmdExec.exec(AbstrDockerCmdExec.java:53)
at com.github.dockerjava.core.command.AbstrDockerCmd.exec(AbstrDockerCmd.java:29)
at com.whisk.docker.DockerKit$$anonfun$listImages$1.apply(DockerKit.scala:25)
at com.whisk.docker.DockerKit$$anonfun$listImages$1.apply(DockerKit.scala:25)
Caused by: org.apache.http.conn.UnsupportedSchemeException: https protocol is not supported
at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:99)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:314)
at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:357)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:218)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:194)
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:72)
at com.github.dockerjava.jaxrs.connector.ApacheConnector.apply(ApacheConnector.java:443)
... 15 more
I have the impression something is not being cleaned up when running tests with ~testOnly foo.bar.dockerTestName
The current dependency graph initialization looks like this:
def initReadyAll(): Future[Seq[(DockerContainerState, Boolean)]] = {
import DockerContainerManager._
@tailrec
def initGraph(
graph: ContainerDependencyGraph,
previousInits: Future[Seq[DockerContainerState]] = Future.successful(Seq.empty)
): Future[Seq[DockerContainerState]] = {
val updatedInits = previousInits.flatMap { prev =>
Future.traverse(graph.containers.map(dockerStatesMap))(_.init()).map(prev ++ _)
}
if (graph.dependants.isEmpty) updatedInits else initGraph(graph.dependants.get, updatedInits)
}
initGraph(buildDependencyGraph(containers)).flatMap(Future.traverse(_) { c =>
c.isReady().map(c -> _).recover {
case e =>
log.error(e.getMessage, e)
c -> false
}
})
}
This does not wait for containers to become ready before moving onto the dependencies, specifically these lines:
def initGraph(
graph: ContainerDependencyGraph,
previousInits: Future[Seq[DockerContainerState]] = Future.successful(Seq.empty)
): Future[Seq[DockerContainerState]] = {
val updatedInits = previousInits.flatMap { prev =>
Future.traverse(graph.containers.map(dockerStatesMap))(_.init()).map(prev ++ _)
}
// this should wait for the updatedInits to complete before moving on
if (graph.dependants.isEmpty) updatedInits else initGraph(graph.dependants.get, updatedInits)
}
This can cause issues, since many containers require for the dependent container to be ready before being initialized. For example, an application which runs database migrations on a database requires that the database is accepting connections. Another example is kafka depending on zookeeper to be available to register with it. In those examples, if the database migration app or kafka comes up before its dependency, the container will fail to initialize. This is a common issue when using docker-compose
, which simply also initializes all containers with a similar dependency graph.
An implementation that would wait for dependent containers would look like this:
@tailrec
def initGraph(
graph: ContainerDependencyGraph,
previousInits: Future[Seq[DockerContainerState]] = Future.successful(Seq.empty)
): Future[Seq[DockerContainerState]] = {
val updatedInits: Future[Seq[DockerContainerState]] = previousInits.flatMap { prev =>
Future.traverse(graph.containers.map(dockerStatesMap))(_.init()).map(prev ++ _)
}
// waits for this "level" of the dependency graph to initialize before calling initGraph for the next level.
graph.dependants match {
case None => updatedInits
case Some(dependents) =>
val readyInits: Future[Seq[Future[Boolean]]] = updatedInits.map(initSeq => initSeq.map(_.isReady()))
val simplifiedReadyInits: Future[Seq[Boolean]] = readyInits.flatMap(Future.sequence(_))
val allReady: Future[Boolean] = simplifiedReadyInits.map(initsReady => initsReady.forall(_ == true))
allReady.map { case false => log.error("At least one container was not ready") }
initGraph(dependents, updatedInits)
}
}
If people agree that this functionality is important, I can make a pull request to give the functionality, but I wanted to ask first before doing the work. Do we agree that this important functionality?
Hello,
I'm having some trouble running an ElasticSearch container. Here is the error I'm getting:
09:59:26.443 [ScalaTest-run] DEBUG com.spotify.docker.client.DockerConfigReader - Using configfile: /home/az/.dockercfg
09:59:27.490 [pool-1-thread-1] INFO com.spotify.docker.client.DefaultDockerClient - Creating container with ContainerConfig: ContainerConfig{hostname=null, domainname=null, user=null, attachStdin=false, attachStdout=null, attachStderr=null, portSpecs=null, exposedPorts=[9200, 9300], tty=false, openStdin=null, stdinOnce=null, env=[], cmd=null, image=elasticsearch:1.7.1, volumes={}, workingDir=null, entrypoint=null, networkDisabled=null, onBuild=null, labels=null, macAddress=null, hostConfig=HostConfig{binds=[], blkioWeight=null, blkioWeightDevice=null, blkioDeviceReadBps=null, blkioDeviceWriteBps=null, blkioDeviceReadIOps=null, blkioDeviceWriteIOps=null, containerIdFile=null, lxcConf=null, privileged=null, portBindings={9200=[PortBinding{hostIp=0.0.0.0, hostPort=9200}], 9300=[PortBinding{hostIp=0.0.0.0, hostPort=}]}, links=null, publishAllPorts=null, dns=null, dnsOptions=null, dnsSearch=null, extraHosts=null, volumesFrom=null, capAdd=null, capDrop=null, networkMode=null, securityOpt=null, devices=null, memory=null, memorySwap=null, memorySwappiness=null, memoryReservation=null, nanoCpus=null, cpuPeriod=null, cpuShares=null, cpusetCpus=null, cpusetMems=null, cpuQuota=null, cgroupParent=null, restartPolicy=null, logConfig=null, ipcMode=null, ulimits=null, pidMode=null, shmSize=null, oomKillDisable=null, oomScoreAdj=null, autoRemove=null, pidsLimit=null, tmpfs=null, readonlyRootfs=null, storageOpt=null}, stopSignal=null, healthcheck=null, networkingConfig=null}
09:59:27.644 [pool-1-thread-1] INFO com.spotify.docker.client.DefaultDockerClient - Starting container with Id: de2afeb40a273059ddb35eb68c6e104db7b7abe4334cc30df8f7c097177ad055
09:59:47.482 [ScalaTest-run] ERROR com.infare.monitoring.client.MonitoringClientSpec - Exception during container initialization
java.util.concurrent.TimeoutException: Futures timed out after [20 seconds]
at scala.concurrent.impl.Promise$DefaultPromise.ready(Promise.scala:219)
at scala.concurrent.impl.Promise$DefaultPromise.result(Promise.scala:223)
at scala.concurrent.Await$$anonfun$result$1.apply(package.scala:107)
at scala.concurrent.BlockContext$DefaultBlockContext$.blockOn(BlockContext.scala:53)
at scala.concurrent.Await$.result(package.scala:107)
at com.whisk.docker.DockerKit$class.startAllOrFail(DockerKit.scala:51)
at com.infare.monitoring.client.MonitoringClientSpec.startAllOrFail(MonitoringClientSpec.scala:16)
at com.whisk.docker.scalatest.DockerTestKit$class.beforeAll(DockerTestKit.scala:21)
at com.infare.monitoring.client.MonitoringClientSpec.beforeAll(MonitoringClientSpec.scala:16)
at org.scalatest.BeforeAndAfterAll$class.liftedTree1$1(BeforeAndAfterAll.scala:212)
at org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:210)
at com.infare.monitoring.client.MonitoringClientSpec.run(MonitoringClientSpec.scala:16)
at org.scalatest.tools.SuiteRunner.run(SuiteRunner.scala:45)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$1.apply(Runner.scala:1340)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$1.apply(Runner.scala:1334)
at scala.collection.immutable.List.foreach(List.scala:318)
at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:1334)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1011)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1010)
at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:1500)
at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1010)
at org.scalatest.tools.Runner$.run(Runner.scala:850)
at org.scalatest.tools.Runner.run(Runner.scala)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.runScalaTest2(ScalaTestRunner.java:138)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.main(ScalaTestRunner.java:28)
Exception encountered when invoking run on a nested suite - Cannot run all required containers
java.lang.RuntimeException: Cannot run all required containers
at com.whisk.docker.DockerKit$class.startAllOrFail(DockerKit.scala:59)
at com.infare.monitoring.client.MonitoringClientSpec.startAllOrFail(MonitoringClientSpec.scala:16)
at com.whisk.docker.scalatest.DockerTestKit$class.beforeAll(DockerTestKit.scala:21)
at com.infare.monitoring.client.MonitoringClientSpec.beforeAll(MonitoringClientSpec.scala:16)
at org.scalatest.BeforeAndAfterAll$class.liftedTree1$1(BeforeAndAfterAll.scala:212)
at org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:210)
at com.infare.monitoring.client.MonitoringClientSpec.run(MonitoringClientSpec.scala:16)
at org.scalatest.tools.SuiteRunner.run(SuiteRunner.scala:45)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$1.apply(Runner.scala:1340)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$1.apply(Runner.scala:1334)
at scala.collection.immutable.List.foreach(List.scala:318)
at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:1334)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1011)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1010)
at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:1500)
at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1010)
at org.scalatest.tools.Runner$.run(Runner.scala:850)
at org.scalatest.tools.Runner.run(Runner.scala)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.runScalaTest2(ScalaTestRunner.java:138)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.main(ScalaTestRunner.java:28)
I'm using scalatest
. Here is the definition of my test class
class MonitoringClientSpec extends FlatSpec with GivenWhenThen with Matchers with Fixtures with DockerKitSpotify with DockerElasticsearchService with DockerTestKit
The interesting thing is that I am initially able to successfully run an adapted version of your example of an ES container:
it should "start only if the Elasticsearch container is started" in {
isContainerReady(elasticsearchContainer).futureValue shouldBe true
elasticsearchContainer.getPorts().futureValue.get(9300) should not be empty
elasticsearchContainer.getPorts().futureValue.get(9200) should not be empty
elasticsearchContainer.getIpAddresses().futureValue should not be (Seq.empty)
}
After I hit the aforementioned error though - no test managed to succeed.
Any help would be appreciated.
Hi!
From osx (boot2docker with docker version 1.7.1) I successful pull the images but after that the test fails. That's the log:
sbt test
[info] Loading global plugins from /Users/giangi/.sbt/0.13/plugins
[info] Loading project definition from /Users/giangi/Projects/brokersquare/references/docker-it-scala/project
[info] Set current project to docker-it-scala (in build file:/Users/giangi/Projects/brokersquare/references/docker-it-scala/)
[info] KafkaServiceSpec:
15:23:37.923 [ForkJoinPool-1-worker-5] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: images
15:23:38.132 [ForkJoinPool-1-worker-5] DEBUG c.g.d.jaxrs.DockerCmdExecFactoryImpl - 1 * Sending client request on thread ForkJoinPool-1-worker-5
1 > GET https://192.168.59.103:2376/images/json?all=0
1 > Accept: application/json
15:23:38.168 [ForkJoinPool-1-worker-5] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: best-match
15:23:38.179 [ForkJoinPool-1-worker-5] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
15:23:38.181 [ForkJoinPool-1-worker-5] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection request: [route: {s}->https://192.168.59.103:2376][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
15:23:38.199 [ForkJoinPool-1-worker-5] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection leased: [id: 0][route: {s}->https://192.168.59.103:2376][total kept alive: 0; route allocated: 1 of 2; total allocated: 1 of 20]
15:23:38.205 [ForkJoinPool-1-worker-5] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {s}->https://192.168.59.103:2376
15:23:38.361 [ForkJoinPool-1-worker-5] DEBUG o.a.h.c.HttpClientConnectionManager - Connecting to /192.168.59.103:2376
15:24:08.552 [ForkJoinPool-1-worker-5] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request GET /images/json?all=0 HTTP/1.1
15:24:08.553 [ForkJoinPool-1-worker-5] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
15:24:08.553 [ForkJoinPool-1-worker-5] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
15:24:08.554 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 >> GET /images/json?all=0 HTTP/1.1
15:24:08.554 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 >> Accept: application/json
15:24:08.554 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 >> User-Agent: Jersey/2.11 (Apache HttpClient 4.3.1)
15:24:08.554 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 >> Host: 192.168.59.103:2376
15:24:08.554 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 >> Connection: Keep-Alive
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 >> Accept-Encoding: gzip,deflate
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 >> "GET /images/json?all=0 HTTP/1.1[\r][\n]"
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 >> "Accept: application/json[\r][\n]"
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 >> "User-Agent: Jersey/2.11 (Apache HttpClient 4.3.1)[\r][\n]"
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 >> "Host: 192.168.59.103:2376[\r][\n]"
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 >> "Connection: Keep-Alive[\r][\n]"
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 >> "Accept-Encoding: gzip,deflate[\r][\n]"
15:24:08.555 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 >> "[\r][\n]"
15:24:08.609 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 << "HTTP/1.1 200 OK[\r][\n]"
15:24:08.609 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 << "Content-Type: application/json[\r][\n]"
15:24:08.609 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 << "Date: Sun, 02 Aug 2015 13:21:17 GMT[\r][\n]"
15:24:08.609 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 << "Content-Length: 1886[\r][\n]"
15:24:08.609 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 << "[\r][\n]"
15:24:08.609 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.wire - http-outgoing-0 << "[{"Id":"013071f640b14090ae071b71b888cfd577e2b74933c6926dbae102f9de416ce0","ParentId":"f33708e0f5256721ee6f8a233566bec37af64961add7362eb80fae7ccbf41202","RepoTags":["whisk/neo4j:2.1.8"],"RepoDigests":[],"Created":1435956542,"Size":0,"VirtualSize":209357587,"Labels":{}},{"Id":"fa0a6690446b2a14d06bd54a10fc2fb48c8fc84e180fa0af405068aae7367955","ParentId":"a02a1809c64afb456fc337ea954c01a30e4e52a657e2a84305e19a9a90e2b058","RepoTags":["mongo:3.0.3"],"RepoDigests":[],"Created":1434211656,"Size":0,"VirtualSize":257755649,"Labels":{}},{"Id":"09fcad99711a6121f6c90e54f30646db82f4c19848f4e26221a702709382566d","ParentId":"1c444ac450beb202af1bb0a18ac6deafa57d9195fd404638b4c77d574b1dd7d3","RepoTags":["cassandra:2.1.5"],"RepoDigests":[],"Created":1433290184,"Size":0,"VirtualSize":353346146,"Labels":{}},{"Id":"b82082cf67ba05928cf7e2c063f7da7bf2d93dd1ce148fb987216fa6dda1dafe","ParentId":"0055a53ac78664b0b5bcdbc775c3ca69fdacce577fb4093ad1a92511c360206b","RepoTags":["elasticsearch:1.4.4"],"RepoDigests":[],"Created":1429707889,"Size":0,"VirtualSize":368171578,"Labels":{}},{"Id":"8db3bd05850a9aa498d793585f2ba5067cd0848a7ca5cc3d54bb61697f4c0d30","ParentId":"cad297fb889eaeb5da5f62439b7532e118315e25fb6e5a1e3a5de22fce39b7d0","RepoTags":["wurstmeister/kafka:0.8.2.1"],"RepoDigests":[],"Created":1428833223,"Size":0,"VirtualSize":478479411,"Labels":null},{"Id":"224873bdcaa1b5d75779ae726d67b486d345c35c394ca63197c442bd634f31d8","ParentId":"89785ab09669852f9dbd57d001aba4ea9c43c0269a701cfe7b0fb96b5100e905","RepoTags":["nginx:1.7.11"],"RepoDigests":[],"Created":1427746729,"Size":0,"VirtualSize":93440740,"Labels":null},{"Id":"f3f0108676239f00512c81abda621f407c315e483b2b97be4d7cb44353fb0d6e","ParentId":"3ca9cb2541c8f44d4be6aa497d4259e28afbdb635eb7104bd7cf0815a3d979e2","RepoTags":["jplock/zookeeper:3.4.6"],"RepoDigests":[],"Created":1414023087,"Size":0,"VirtualSize":342741441,"Labels":null}][\n]"
15:24:08.612 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 << HTTP/1.1 200 OK
15:24:08.612 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 << Content-Type: application/json
15:24:08.612 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 << Date: Sun, 02 Aug 2015 13:21:17 GMT
15:24:08.612 [ForkJoinPool-1-worker-5] DEBUG org.apache.http.headers - http-outgoing-0 << Content-Length: 1886
15:24:08.614 [ForkJoinPool-1-worker-5] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
15:24:08.625 [ForkJoinPool-1-worker-5] DEBUG c.g.d.jaxrs.DockerCmdExecFactoryImpl - 2 * Client response received on thread ForkJoinPool-1-worker-5
2 < 200
2 < Content-Length: 1886
2 < Content-Type: application/json
2 < Date: Sun, 02 Aug 2015 13:21:17 GMT
[{"Id":"013071f640b14090ae071b71b888cfd577e2b74933c6926dbae102f9de416ce0","ParentId":"f33708e0f5256721ee6f8a233566bec37af64961add7362eb80fae7ccbf41202","RepoTags":["whisk/neo4j:2.1.8"],"RepoDigests":[],"Created":1435956542,"Size":0,"VirtualSize":209357587,"Labels":{}},{"Id":"fa0a6690446b2a14d06bd54a10fc2fb48c8fc84e180fa0af405068aae7367955","ParentId":"a02a1809c64afb456fc337ea954c01a30e4e52a657e2a84305e19a9a90e2b058","RepoTags":["mongo:3.0.3"],"RepoDigests":[],"Created":1434211656,"Size":0,"VirtualSize":257755649,"Labels":{}},{"Id":"09fcad99711a6121f6c90e54f30646db82f4c19848f4e26221a702709382566d","ParentId":"1c444ac450beb202af1bb0a18ac6deafa57d9195fd404638b4c77d574b1dd7d3","RepoTags":["cassandra:2.1.5"],"RepoDigests":[],"Created":1433290184,"Size":0,"VirtualSize":353346146,"Labels":{}},{"Id":"b82082cf67ba05928cf7e2c063f7da7bf2d93dd1ce148fb987216fa6dda1dafe","ParentId":"0055a53ac78664b0b5bcdbc775c3ca69fdacce577fb4093ad1a92511c360206b","RepoTags":["elasticsearch:1.4.4"],"RepoDigests":[],"Created":1429707889,"Size":0,"VirtualSize":368171578,"Labels":{}},{"Id":"8db3bd05850a9aa498d793585f2ba5067cd0848a7ca5cc3d54bb61697f4c0d30","ParentId":"cad297fb889eaeb5da5f62439b7532e118315e25fb6e5a1e3a5de22fce39b7d0","RepoTags":["wurstmeister/kafka:0.8.2.1"],"RepoDigests":[],"Created":1428833223,"Size":0,"VirtualSize":478479411,"Labels":null},{"Id":"224873bdcaa1b5d75779ae726d67b486d345c35c394ca63197c442bd634f31d8","ParentId":"89785ab09669852f9dbd57d001aba4ea9c43c0269a701cfe7b0fb96b5100e905","RepoTags":["nginx:1.7.11"],"RepoDigests":[],"Created":1427746729,"Size":0,"VirtualSize":93440740,"Labels":null},{"Id":"f3f0108676239f00512c81abda621f407c315e483b2b97be4d7cb44353fb0d6e","ParentId":"3ca9cb2541c8f44d4be6aa497d4259e28afbdb635eb7104bd7cf0815a3d979e2","RepoTags":["jplock/zookeeper:3.4.6"],"RepoDigests":[],"Created":1414023087,"Size":0,"VirtualSize":342741441,"Labels":null}]
15:24:08.794 [ForkJoinPool-1-worker-5] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection [id: 0][route: {s}->https://192.168.59.103:2376][state: O=Boot2Docker] can be kept alive indefinitely
15:24:08.794 [ForkJoinPool-1-worker-5] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection released: [id: 0][route: {s}->https://192.168.59.103:2376][state: O=Boot2Docker][total kept alive: 1; route allocated: 1 of 2; total allocated: 1 of 20]
15:24:09.035 [ForkJoinPool-1-worker-1] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: com.github.dockerjava.core.command.CreateContainerCmdImpl@42372ba1[create container ,,com.github.dockerjava.core.command.CreateContainerCmdImpl@42372ba1]
15:24:09.044 [ForkJoinPool-1-worker-1] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: best-match
15:24:09.044 [ForkJoinPool-1-worker-1] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
15:24:09.046 [ForkJoinPool-1-worker-1] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection request: [route: {s}->https://192.168.59.103:2376][total kept alive: 1; route allocated: 1 of 2; total allocated: 1 of 20]
15:24:09.046 [ForkJoinPool-1-worker-1] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection leased: [id: 1][route: {s}->https://192.168.59.103:2376][total kept alive: 1; route allocated: 2 of 2; total allocated: 2 of 20]
15:24:09.046 [ForkJoinPool-1-worker-1] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {s}->https://192.168.59.103:2376
15:24:09.047 [ForkJoinPool-1-worker-1] DEBUG o.a.h.c.HttpClientConnectionManager - Connecting to /192.168.59.103:2376
15:24:29.039 [pool-1-thread-1] ERROR whisk.docker.KafkaServiceSpec - Exception during container initialization
org.scalatest.concurrent.Futures$FutureConcept$$anon$1: A timeout occurred waiting for a future to complete. Queried 1744 times, sleeping 10 milliseconds between each query.
at org.scalatest.concurrent.Futures$FutureConcept$class.tryTryAgain$1(Futures.scala:546) ~[scalatest_2.11-2.2.4.jar:na]
at org.scalatest.concurrent.Futures$FutureConcept$class.futureValue(Futures.scala:558) ~[scalatest_2.11-2.2.4.jar:na]
at org.scalatest.concurrent.ScalaFutures$$anon$1.futureValue(ScalaFutures.scala:74) ~[scalatest_2.11-2.2.4.jar:na]
at whisk.docker.test.DockerTestKit$class.beforeAll(DockerTestKit.scala:50) ~[classes/:na]
at whisk.docker.KafkaServiceSpec.beforeAll(KafkaServiceSpec.scala:8) [test-classes/:na]
at org.scalatest.BeforeAndAfterAll$class.beforeAll(BeforeAndAfterAll.scala:187) [scalatest_2.11-2.2.4.jar:na]
at whisk.docker.KafkaServiceSpec.beforeAll(KafkaServiceSpec.scala:8) [test-classes/:na]
at org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:253) [scalatest_2.11-2.2.4.jar:na]
at whisk.docker.KafkaServiceSpec.run(KafkaServiceSpec.scala:8) [test-classes/:na]
at org.scalatest.tools.Framework.org$scalatest$tools$Framework$$runSuite(Framework.scala:466) [scalatest_2.11-2.2.4.jar:na]
at org.scalatest.tools.Framework$ScalaTestTask.execute(Framework.scala:677) [scalatest_2.11-2.2.4.jar:na]
at sbt.ForkMain$Run$2.call(ForkMain.java:294) [test-agent-0.13.8.jar:0.13.8]
at sbt.ForkMain$Run$2.call(ForkMain.java:284) [test-agent-0.13.8.jar:0.13.8]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_05]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_05]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_05]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_05]
15:24:39.202 [ForkJoinPool-1-worker-1] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request POST /containers/create HTTP/1.1
15:24:39.202 [ForkJoinPool-1-worker-1] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
15:24:39.203 [ForkJoinPool-1-worker-1] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> POST /containers/create HTTP/1.1
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> Accept: application/json
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> Content-Type: application/json
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> User-Agent: Jersey/2.11 (Apache HttpClient 4.3.1)
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> Transfer-Encoding: chunked
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> Host: 192.168.59.103:2376
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> Connection: Keep-Alive
15:24:39.204 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 >> Accept-Encoding: gzip,deflate
15:24:39.278 [ForkJoinPool-1-worker-1] DEBUG c.g.d.jaxrs.DockerCmdExecFactoryImpl - 3 * Sending client request on thread ForkJoinPool-1-worker-1
3 > POST https://192.168.59.103:2376/containers/create
3 > Accept: application/json
3 > Content-Type: application/json
{"name":null,"capAdd":null,"capDrop":null,"Hostname":"","Domainname":"","User":"","Memory":0,"MemorySwap":0,"CpuShares":0,"Cpuset":null,"AttachStdin":false,"AttachStdout":false,"AttachStderr":false,"PortSpecs":["2181"],"Tty":false,"OpenStdin":false,"StdinOnce":false,"Env":[],"Cmd":null,"Entrypoint":null,"Image":"jplock/zookeeper:3.4.6","Volumes":{},"WorkingDir":"","MacAddress":null,"NetworkDisabled":false,"ExposedPorts":{"2181/tcp":{}},"HostConfig":{"Binds":null,"Links":[],"LxcConf":null,"PortBindings":{"2181/tcp":[{"HostIp":"","HostPort":""}]},"PublishAllPorts":false,"Privileged":false,"ReadonlyRootfs":false,"Dns":null,"DnsSearch":null,"VolumesFrom":null,"ContainerIDFile":null,"CapAdd":null,"CapDrop":null,"RestartPolicy":null,"NetworkMode":null,"Devices":null,"ExtraHosts":null,"Ulimits":null}}
15:24:39.279 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "POST /containers/create HTTP/1.1[\r][\n]"
15:24:39.280 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "Accept: application/json[\r][\n]"
15:24:39.280 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "Content-Type: application/json[\r][\n]"
15:24:39.280 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "User-Agent: Jersey/2.11 (Apache HttpClient 4.3.1)[\r][\n]"
15:24:39.280 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "Transfer-Encoding: chunked[\r][\n]"
15:24:39.281 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "Host: 192.168.59.103:2376[\r][\n]"
15:24:39.281 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "Connection: Keep-Alive[\r][\n]"
15:24:39.281 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "Accept-Encoding: gzip,deflate[\r][\n]"
15:24:39.281 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "[\r][\n]"
15:24:39.282 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "325[\r][\n]"
15:24:39.282 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "{"name":null,"capAdd":null,"capDrop":null,"Hostname":"","Domainname":"","User":"","Memory":0,"MemorySwap":0,"CpuShares":0,"Cpuset":null,"AttachStdin":false,"AttachStdout":false,"AttachStderr":false,"PortSpecs":["2181"],"Tty":false,"OpenStdin":false,"StdinOnce":false,"Env":[],"Cmd":null,"Entrypoint":null,"Image":"jplock/zookeeper:3.4.6","Volumes":{},"WorkingDir":"","MacAddress":null,"NetworkDisabled":false,"ExposedPorts":{"2181/tcp":{}},"HostConfig":{"Binds":null,"Links":[],"LxcConf":null,"PortBindings":{"2181/tcp":[{"HostIp":"","HostPort":""}]},"PublishAllPorts":false,"Privileged":false,"ReadonlyRootfs":false,"Dns":null,"DnsSearch":null,"VolumesFrom":null,"ContainerIDFile":null,"CapAdd":null,"CapDrop":null,"RestartPolicy":null,"NetworkMode":null,"Devices":null,"ExtraHosts":null,"Ulimits":null}}[\r][\n]"
15:24:39.282 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "0[\r][\n]"
15:24:39.282 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 >> "[\r][\n]"
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 << "HTTP/1.1 201 Created[\r][\n]"
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 << "Content-Type: application/json[\r][\n]"
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 << "Date: Sun, 02 Aug 2015 13:21:47 GMT[\r][\n]"
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 << "Content-Length: 90[\r][\n]"
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 << "[\r][\n]"
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.wire - http-outgoing-1 << "{"Id":"9acd213d2ffda25f5f162ae43431b496039a5ff0ea1d018f4911787bc622c0ac","Warnings":null}[\n]"
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 << HTTP/1.1 201 Created
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 << Content-Type: application/json
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 << Date: Sun, 02 Aug 2015 13:21:47 GMT
15:24:39.418 [ForkJoinPool-1-worker-1] DEBUG org.apache.http.headers - http-outgoing-1 << Content-Length: 90
15:24:39.419 [ForkJoinPool-1-worker-1] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
15:24:39.419 [ForkJoinPool-1-worker-1] DEBUG c.g.d.jaxrs.DockerCmdExecFactoryImpl - 4 * Client response received on thread ForkJoinPool-1-worker-1
4 < 201
4 < Content-Length: 90
4 < Content-Type: application/json
4 < Date: Sun, 02 Aug 2015 13:21:47 GMT
{"Id":"9acd213d2ffda25f5f162ae43431b496039a5ff0ea1d018f4911787bc622c0ac","Warnings":null}
15:24:39.422 [ForkJoinPool-1-worker-1] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection [id: 1][route: {s}->https://192.168.59.103:2376][state: O=Boot2Docker] can be kept alive indefinitely
15:24:39.423 [ForkJoinPool-1-worker-1] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection released: [id: 1][route: {s}->https://192.168.59.103:2376][state: O=Boot2Docker][total kept alive: 2; route allocated: 2 of 2; total allocated: 2 of 20]
15:24:39.426 [ForkJoinPool-1-worker-5] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: rm --volumes=true--force=true9acd213d2ffda25f5f162ae43431b496039a5ff0ea1d018f4911787bc622c0ac
15:24:39.426 [ForkJoinPool-1-worker-7] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: com.github.dockerjava.core.command.StartContainerCmdImpl@4e311516[containerId=9acd213d2ffda25f5f162ae43431b496039a5ff0ea1d018f4911787bc622c0ac,execution=com.github.dockerjava.jaxrs.StartContainerCmdExec@21d10ea9]
15:24:39.427 [ForkJoinPool-1-worker-5] DEBUG c.g.d.jaxrs.DockerCmdExecFactoryImpl - 5 * Sending client request on thread ForkJoinPool-1-worker-5
5 > DELETE https://192.168.59.103:2376/containers/9acd213d2ffda25f5f162ae43431b496039a5ff0ea1d018f4911787bc622c0ac?v=1&force=1
5 > Accept: application/json
15:24:39.428 [ForkJoinPool-1-worker-5] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: best-match
15:24:39.428 [ForkJoinPool-1-worker-5] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
15:24:39.428 [ForkJoinPool-1-worker-5] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection request: [route: {s}->https://192.168.59.103:2376][total kept alive: 2; route allocated: 2 of 2; total allocated: 2 of 20]
15:24:39.428 [ForkJoinPool-1-worker-5] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-0: Close connection
15:24:39.430 [ForkJoinPool-1-worker-5] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection leased: [id: 2][route: {s}->https://192.168.59.103:2376][total kept alive: 1; route allocated: 2 of 2; total allocated: 2 of 20]
15:24:39.430 [ForkJoinPool-1-worker-5] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {s}->https://192.168.59.103:2376
15:24:39.431 [ForkJoinPool-1-worker-5] DEBUG o.a.h.c.HttpClientConnectionManager - Connecting to /192.168.59.103:2376
15:24:39.431 [ForkJoinPool-1-worker-7] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: best-match
15:24:39.431 [ForkJoinPool-1-worker-7] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
15:24:39.431 [ForkJoinPool-1-worker-7] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection request: [route: {s}->https://192.168.59.103:2376][total kept alive: 1; route allocated: 2 of 2; total allocated: 2 of 20]
15:24:39.431 [ForkJoinPool-1-worker-7] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-1: Close connection
15:24:39.432 [ForkJoinPool-1-worker-7] DEBUG o.a.h.i.c.PoolingHttpClientConnectionManager - Connection leased: [id: 3][route: {s}->https://192.168.59.103:2376][total kept alive: 0; route allocated: 2 of 2; total allocated: 2 of 20]
15:24:39.432 [ForkJoinPool-1-worker-7] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {s}->https://192.168.59.103:2376
15:24:39.433 [ForkJoinPool-1-worker-7] DEBUG o.a.h.c.HttpClientConnectionManager - Connecting to /192.168.59.103:2376
[info] Exception encountered when attempting to run a suite with class name: whisk.docker.KafkaServiceSpec *** ABORTED ***
[info] Exception encountered when attempting to run a suite with class name: whisk.docker.KafkaServiceSpec (DockerTestKit.scala:58)
[info] Run completed in 1 minute, 12 seconds.
[info] Total number of tests run: 0
[info] Suites: completed 0, aborted 1
[info] Tests: succeeded 0, failed 0, canceled 0, ignored 0, pending 0
[info] *** 1 SUITE ABORTED ***
[error] Error during tests:
[error] whisk.docker.KafkaServiceSpec
[error] (test:test) sbt.TestsFailedException: Tests unsuccessful
[error] Total time: 74 s, completed Aug 2, 2015 3:24:49 PM
Have you any idea of what is wrong?
Thanks
Regards
Gianluca
I haven't found any API to add volumes to container. Does it exist?
Also CreateContainerCmd
of underlying java-api has much more options to configure, so maybe it's worth to give direct access to CreateContainerCmd
from com.whisk.docker.DockerContainer
?
I use this library to start an instance of PosgreSQL database.
It would be nice to add a ReadyChecker for Postgres.
It's taken me a while to follow up on this but docker-it-scala has been causing my test suite serious problems. Since the last issue I raised a while ago, I managed to upgrade to 0.9.0-M2 and my tests were working, but at some indeterminate point after that they stopped working again, while still on 0.9.0-M2. Here's the error I'm getting:
Exception encountered when invoking run on a nested suite. *** ABORTED ***
java.lang.NullPointerException:
at scala.collection.mutable.WrappedArray$ofRef.length(WrappedArray.scala:125)
at scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:97)
at scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:47)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:251)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:251)
at scala.collection.Iterator$class.foreach(Iterator.scala:727)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
at scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:251)
at scala.collection.AbstractTraversable.flatMap(Traversable.scala:105)
at com.whisk.docker.DockerJavaExecutor$$anonfun$listImages$1.apply(DockerJavaExecutor.scala:118)
at com.whisk.docker.DockerJavaExecutor$$anonfun$listImages$1.apply(DockerJavaExecutor.scala:118)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
I've also tried updating to 0.9.0-M10 today, which, aside from being incompatible with M2 because of the introduction of the dockerFactory method in the DockerTestKit trait, and requiring an additional dependency without warning, failed with the same issue once I figured out where the dependency lived and what I had to do to fix the incompatibility issue (using the dockerjava impl).
I also tried the spotify impl, which gave me a different issue - NoClassDefErrors:
Exception in thread "pool-2-thread-2" java.lang.NoClassDefFoundError: com/spotify/docker/client/DockerClient$RemoveContainerParam
at com.whisk.docker.impl.spotify.SpotifyDockerCommandExecutor$$anonfun$remove$1.apply$mcV$sp(SpotifyDockerCommandExecutor.scala:146)
at com.whisk.docker.impl.spotify.SpotifyDockerCommandExecutor$$anonfun$remove$1.apply(SpotifyDockerCommandExecutor.scala:146)
at com.whisk.docker.impl.spotify.SpotifyDockerCommandExecutor$$anonfun$remove$1.apply(SpotifyDockerCommandExecutor.scala:146)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
I checked the docker daemon logs, which showed no docker activity in the period in which I was trying to run these tests, which suggests that the library broke before it got as far as instructing docker to do anything.
Any idea why this is happening? I'm fairly sure I'm not doing anything special or different here, which suggests it simply isn't working. I'm going to have a hunt through the stack trace and see if I can identify where that null is coming from now, but you'll note the stack trace is entirely within the library.
The spotify issue, being a NoClassDefFound issue, suggests a bad release? I notice you just released RC1, but it's so recent I wasn't able to fetch it from the central repository.
I'm on docker version 1.12.3
, running natively in 64-bit fedora.
It appears that there is no way to set the username that should be used to create/run a container. Looking at the source code this could be be fixed in a straightforward manner by adding an optional field to the DockerContainer
class, and call the ContainerConfig.Builder#user
with the provided user.
Does this seem a viable approach? If so, I could make a PR.
Hi, first of all thanks for this great tool!
Would you mind enabling maven central sync? We try to avoid custom repositories in our build file as we had a lot of problems with those in the past where suddenly the repository or artifacts disappeared.
Another good reason: #15
More info on enabling the sync here:
https://bintray.com/docs/usermanual/uploads/uploads_syncingartifactswithmavencentral.html
Thanks in advance
Recently started experimenting with the docker for mac beta. It uses a unix socket. It seems that docker-java cannot deal with unix socket connections on OSX.
Temporary workaround:
export DOCKER_HOST=tcp://docker.local:2375
export DOCKER_TLS_VERIFY=0
See discussion here: docker-java/docker-java#537
Hello folks,
there is an issue with the implementation of DockerReadyChecker.and
: it needs the implicit parameter ExecutionContext
, but the default from DockerKit
uses this.dockerContainers.length
, which in turn needs all the containers (including ready checkers) to be configured. This results in a StackOverflowError
.
Proposed solution: Implement DockerReadyChecker.and
in terms of a combining class, something like
case class And(left: DockerReadyChecker, right: DockerReadyChecker) extends DockerReadyChecker { ... }
Cheers, Markus
P.S.: The same goes for or
, naturally.
I'm trying to create a InfluxDB service like this:
trait DockerInfluxDBService extends DockerKit {
val DefaultInfluxDBAdminPort = 8083
val DefaultInfluxDBPort = 8086
val influxdbContainer = DockerContainer("tutum/influxdb:latest")
.withPorts(
DefaultInfluxDBPort -> None,
DefaultInfluxDBAdminPort -> None
)
.withReadyChecker(LogLineContains("Listening for signals"))
//.withCommand("/run.sh")
abstract override def dockerContainers: List[DockerContainer] = influxdbContainer :: super.dockerContainers
}
the server does not seem to fully start/logs are not fully read causing the LogLineContains to never succeed. (checked by creating my own LogLineContains)
The HttpResponseCode check gives me a timeout.
In kitematic the image runs perfectly and logs the line I wait for
Using OS X 10.10.5, with Homebrew, on commit 8c00ec7
Hardware: mid-2015 Macbook Pro (16GB RAM, 2,7GHz Core i5)
$ docker --version
Docker version 1.9.1, build a34a1d5
$ docker-machine ls
NAME ACTIVE URL STATE URL SWARM DOCKER ERRORS
default - virtualbox Stopped Unknown
nginx - virtualbox Stopped Unknown
temp * virtualbox Running tcp://192.168.99.101:2376 v1.10.0
ubuntu - virtualbox Saved Unknown
Some of the tests are failing, for timeout or other reasons.
Is this normal? Could we do something to make the tests pass?
AllAtOnceSpec FAIL โCannot run all required containersโ (some timeout of 20 secs was met, at least twice)
CassandraServiceSpec PASS
DockerServiceSpec FAIL (โtrue was not equal to false (DockerServiceSpec.scala:30โ)
ElasticsearchServiceSpec FAIL โCannot run all required containersโ (some timeout of 20 secs was met)
KafkaServiceSpec FAIL โCannot run all required containersโ (โBind for 0.0.0.0:9092 failed: port is already allocatedโ)
MongodbServiceSpec PASS
Neo4jServiceSpec FAIL โCannot run all required containersโ (some timeout of 20 secs was met)
PostgresServiceSpec PASS
ZookeeperServiceSpec PASS
If you want to see logs, I can attach them to this ticket. I would suggest looking at one of the failing tests above, at a time.
I ran the tests by:
$ sbt
...
> testOnly *CassandraServiceSpec
Hi all,
i have a question, do we have any example about how to access to the container log in a test?
i get the following exception:
15:07:11.494 [ScalaTest-run] ERROR com.whisk.docker.KafkaServiceSpec - Exception during container initialization
java.util.concurrent.TimeoutException: Futures timed out after [20 seconds]
at scala.concurrent.impl.Promise$DefaultPromise.ready(Promise.scala:219)
at scala.concurrent.impl.Promise$DefaultPromise.result(Promise.scala:223)
at scala.concurrent.Await$$anonfun$result$1.apply(package.scala:190)
at scala.concurrent.BlockContext$DefaultBlockContext$.blockOn(BlockContext.scala:53)
at scala.concurrent.Await$.result(package.scala:190)
at com.whisk.docker.DockerKit$class.startAllOrFail(DockerKit.scala:51)
at com.whisk.docker.KafkaServiceSpec.startAllOrFail(KafkaServiceSpec.scala:8)
at com.whisk.docker.DockerTestKit$class.beforeAll(DockerTestKit.scala:20)
at com.whisk.docker.KafkaServiceSpec.beforeAll(KafkaServiceSpec.scala:8)
at org.scalatest.BeforeAndAfterAll$class.beforeAll(BeforeAndAfterAll.scala:187)
at com.whisk.docker.KafkaServiceSpec.beforeAll(KafkaServiceSpec.scala:8)
at org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:253)
at com.whisk.docker.KafkaServiceSpec.run(KafkaServiceSpec.scala:8)
at org.scalatest.tools.SuiteRunner.run(SuiteRunner.scala:55)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$3.apply(Runner.scala:2563)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$3.apply(Runner.scala:2557)
at scala.collection.immutable.List.foreach(List.scala:381)
at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:2557)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1044)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1043)
at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:2722)
at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1043)
at org.scalatest.tools.Runner$.run(Runner.scala:883)
at org.scalatest.tools.Runner.run(Runner.scala)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.runScalaTest2(ScalaTestRunner.java:138)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.main(ScalaTestRunner.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Exception encountered when invoking run on a nested suite - Cannot run all required containers
java.lang.RuntimeException: Cannot run all required containers
at com.whisk.docker.DockerKit$class.startAllOrFail(DockerKit.scala:59)
at com.whisk.docker.KafkaServiceSpec.startAllOrFail(KafkaServiceSpec.scala:8)
at com.whisk.docker.DockerTestKit$class.beforeAll(DockerTestKit.scala:20)
at com.whisk.docker.KafkaServiceSpec.beforeAll(KafkaServiceSpec.scala:8)
at org.scalatest.BeforeAndAfterAll$class.beforeAll(BeforeAndAfterAll.scala:187)
at com.whisk.docker.KafkaServiceSpec.beforeAll(KafkaServiceSpec.scala:8)
at org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:253)
at com.whisk.docker.KafkaServiceSpec.run(KafkaServiceSpec.scala:8)
at org.scalatest.tools.SuiteRunner.run(SuiteRunner.scala:55)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$3.apply(Runner.scala:2563)
at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$3.apply(Runner.scala:2557)
at scala.collection.immutable.List.foreach(List.scala:381)
at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:2557)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1044)
at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1043)
at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:2722)
at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1043)
at org.scalatest.tools.Runner$.run(Runner.scala:883)
at org.scalatest.tools.Runner.run(Runner.scala)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.runScalaTest2(ScalaTestRunner.java:138)
at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.main(ScalaTestRunner.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Docker image versions are hardcoded. It makes it required to copy the whole Docker*Service
when having to test against a different version of Mongo / Cassandra / โฆ
I was using 0.6.1
with
override implicit val docker: Docker =
new Docker(DockerClientConfig
.createDefaultConfigBuilder()
.withUri("unix:///var/run/docker.sock")
.build())
until I got the error
Exception during container initialization
com.github.dockerjava.api.BadRequestException: {"message":"starting container with HostConfig was deprecated since v1.10 and removed in v1.12"}
In the current version (0.8.3
) the method withUri
has been removed. If I replace it with withDockerHost
(my intuitive guess), there are no container getting started (the images are getting downloaded thou).
In the current milestone (0.9.0-M3
), if I replace the block with
override implicit val dockerFactory =
new SpotifyDockerFactory(DefaultDockerClient
.builder
.uri("unix:///var/run/docker.sock")
.build())
the containers are getting started but time out on their ReadyChecker
Running Docker 1.12.0
on Ubuntu
When I mix in a DockerKit in with AsyncFlatSpec from Scalatest3, I'm getting a "ambiguous implicit values" error because both are creating an execution context. I think the right behavior is for DockerKit to either depend on an externally-provided ExecutionContext, or not allow it's executionContext to be exposed to the outside world.
Did as explained in readme and have this issue:
[info] Resolving jline#jline;2.12.1 ...
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: me.lessis#odelay-core_2.11;0.1.0: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn]
[warn] Note: Unresolved dependencies path:
[warn] me.lessis:odelay-core_2.11:0.1.0
[warn] +- me.lessis:undelay_2.11:0.1.0
[warn] +- com.whisk:docker-it-scala-core_2.11:0.4.0
[warn] +- com.whisk:docker-testkit-specs2_2.11:0.4.0 (/Users/francisdb/workspace/WaylayBroker/build.sbt#L96)
[warn] +- foo:influxdb-scala_2.11:0.1-SNAPSHOT
Seems that we need another extra resolver:
resolvers += "softprops-maven" at "http://dl.bintray.com/content/softprops/maven"
The docker daemon log shows me this:
Handler for POST /containers/40a0452be28ff824551dee06516985060009792314a2247f5169fa07e7b10f65/start returned error: starting container with HostConfig was deprecated since v1.10 and removed in v1.12
I updated to the latest version available in the central repository (0.9.0-M5) but it didn't solve the problem. This has broken my test suite and I've had to disable components depending on this library so it'd be helpful if it were made compatible with docker >= 1.12.
The 2.12 version of the samples module does not seem to be available in Maven Central. Could you guys push that up?
Hi there,
when using DockerKit along with ScalaTest's async test suites there's a conflict between the implicit ExecutionContext defined both in AsyncTestSuite
and DockerKit
traits:
Error:(27, 55) ambiguous implicit values:
both method executionContext in trait AsyncTestSuite of type => scala.concurrent.ExecutionContext
and lazy value dockerExecutionContext in trait DockerKit of type => scala.concurrent.ExecutionContext
match expected type scala.concurrent.ExecutionContext
...
I was wondering if DockerKit could avoid declaring that dockerExecutionContext: ExecutionContext
as implicit in order to avoid such conflict.
Thanks
PS: I'm happy to submit a PR if you reckon that might be useful as I do
This project looks great and I wanted to try it on some Scala projects. Was wondering if you're willing to attach an open source license (e.g. MIT, Apache v2)?
Thanks!
when I enable the withPorts in my Service or just using the provided services I get something like this:
(on a mac with docker-machine 0.5.0)
ERROR i.w.i.InfluxDBSpec$$anonfun$1$$anonfun$apply$1$$anon$1 - Exception during container initialization
com.github.dockerjava.api.InternalServerErrorException: Cannot start container c3aec38167be9a4f4b4f31f32e86674da19bae13395f486d1fd39555a4af7162: failed to create endpoint admiring_swirles on network bridge: iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 32821 -j DNAT --to-destination 172.17.0.3:0 ! -i docker0: iptables v1.4.21: Port `0' not valid
Try `iptables -h' or 'iptables --help' for more information.
(exit status 2)
at com.github.dockerjava.core.util.ResponseStatusExceptionFilter.filter(ResponseStatusExceptionFilter.java:53) ~[docker-java-1.4.0.jar:na]
since upgrading docker to version 1.12 broke our old version of docker-it-scala we upgraded to 0.9.0-M5, but then our testcases wouldnt perforn properly. so i downloadsed your repo and tried running
test-only com.whisk.docker.MongodbServiceSpec
in project scalatest this works fine, but in project specs2 i get the following output:
17:16:53.298 [pool-2-thread-1] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: ListImagesCmdImpl[imageNameFilter=<null>,showAll=false,filters=com.github.dockerjava.core.util.FiltersBuilder@0,execution=com.github.dockerjava.jaxrs.ListImagesCmdExec@362a9f7d]
17:16:53.570 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 1 * Sending client request on thread pool-2-thread-1
1 > GET unix://localhost:80/images/json
1 > Accept: application/json
17:16:53.587 [pool-2-thread-1] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: default
17:16:53.592 [pool-2-thread-1] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
17:16:53.593 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection request: [route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
17:16:53.602 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection leased: [id: 0][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 1 of 2; total allocated: 1 of 20]
17:16:53.603 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {}->unix://localhost:80
17:16:53.610 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connecting to localhost/127.0.0.1:80
17:16:53.610 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connection established
17:16:53.610 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request GET /images/json HTTP/1.1
17:16:53.611 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
17:16:53.611 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 >> GET /images/json HTTP/1.1
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 >> Accept: application/json
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 >> User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 >> Host: localhost:80
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 >> Connection: Keep-Alive
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 >> Accept-Encoding: gzip,deflate
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 >> "GET /images/json HTTP/1.1[\r][\n]"
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 >> "Accept: application/json[\r][\n]"
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 >> "User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)[\r][\n]"
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 >> "Host: localhost:80[\r][\n]"
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 >> "Connection: Keep-Alive[\r][\n]"
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 >> "Accept-Encoding: gzip,deflate[\r][\n]"
17:16:53.612 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 >> "[\r][\n]"
17:16:53.655 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "HTTP/1.1 200 OK[\r][\n]"
17:16:53.655 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "Content-Type: application/json[\r][\n]"
17:16:53.655 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "Server: Docker/1.12.1 (linux)[\r][\n]"
17:16:53.655 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "Date: Mon, 29 Aug 2016 15:16:53 GMT[\r][\n]"
17:16:53.655 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "Transfer-Encoding: chunked[\r][\n]"
17:16:53.655 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "[\r][\n]"
17:16:53.655 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "1e4b[\r][\n]"
17:16:53.656 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "[{"Id":"sha256:ddb795388d57a4e04872558c9bf9a8a16bd0fd86421575daadedc80ad4492db5","ParentId":"","RepoTags":["elasticsearch:2.3.5"],"RepoDigests":["elasticsearch@sha256:6eecc2f2878a05bfc7a8f01e2b8f2f2ce8e5c3adb0799c8ef15248dbf1bb7815"],"Created":1470936135,"Size":345113199,"VirtualSize":345113199,"Labels":{}},{"Id":"sha256:ed220e379f1eeb5b5dbba86ddd23c830bbf24c29ea99b5c8aa46fe2710acf734","ParentId":"sha256:6bfb5131e38684aa353b6ffe51d69cef0d6e1fde50625424e38e970cdff0b774","RepoTags":["es-shield:1.0"],"RepoDigests":null,"Created":1468959314,"Size":355165793,"VirtualSize":355165793,"Labels":{}},{"Id":"sha256:d4d272b96f89c39aaee981a0b56a3a422cce0f16d734321b74e68bd2c7c262af","ParentId":"sha256:2b9d3765d8b5da2e2c34b49d8626a2a3b463fe32066c55d2eeb5d4bd796a8927","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1468958672,"Size":349241274,"VirtualSize":349241274,"Labels":{}},{"Id":"sha256:30356cbdb796d69c48bda9c24c05b2374b25bfaa7b7f81827fc4312e5cbd7c2e","ParentId":"sha256:d0390797eb4feaa966b5e4e0dfecf02e509ead64bfd8ab03dc42965447a0c1eb","RepoTags":["es2.3.4:latest"],"RepoDigests":null,"Created":1468953788,"Size":349238516,"VirtualSize":349238516,"Labels":{}},{"Id":"sha256:d0390797eb4feaa966b5e4e0dfecf02e509ead64bfd8ab03dc42965447a0c1eb","ParentId":"","RepoTags":["elasticsearch:latest"],"RepoDigests":null,"Created":1468002008,"Size":346568958,"VirtualSize":346568958,"Labels":{}},{"Id":"sha256:6f609da577b75550c2bc0675b8bac417e6562ea3194df0ead08a7df396dfecdc","ParentId":"sha256:630e66eb99f9115fefe3d874992b79a2bed9ba80a38ab83535eccba373fb94b2","RepoTags":["elasticsearch:2.1.1"],"RepoDigests":null,"Created":1453855490,"Size":345683838,"VirtualSize":345683838,"Labels":null},{"Id":"sha256:3876b81b5a81678926c601cd842040a69eb0456d295cd395e7a895a416cf7d91","ParentId":"sha256:039f1bb3922f20162d1f2e43dc308a21fb975eed0990f31fedd0cc19b4e335ab","RepoTags":["ubuntu:latest"],"RepoDigests":null,"Created":1453246284,"Size":187899635,"VirtualSize":187899635,"Labels":null},{"Id":"sha256:a7851fd94c37b8f0cfb6967cd816ee1a20f24eb417e7a2dbb69b076999964301","ParentId":"sha256:142d8d56d459f0988169a741b1d668c6c7b1ffd8896c595c910514c6d0478b8b","RepoTags":["msi/connection:latest"],"RepoDigests":null,"Created":1452600982,"Size":900832501,"VirtualSize":900832501,"Labels":{}},{"Id":"sha256:510fce1feea623a281610a0299b08069a5deb3b3f8ca2ebff282cf0135e5a3cb","ParentId":"sha256:fcd80bf465c39b74ad310e57c60773baf7d997a7c6be695675c258cbe3754769","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452600367,"Size":900887155,"VirtualSize":900887155,"Labels":{}},{"Id":"sha256:9ec317cd6c438ef4f0661548308670fba7255e817d9954aefd63d94129a7494f","ParentId":"sha256:7b6e796afe1f41071a1ebbf9d7773af331ef853515e979734a44120be6ab70dc","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452599845,"Size":900887155,"VirtualSize":900887155,"Labels":{}},{"Id":"sha256:48d67f95300babd5db06b6181fb86ea2dd730ab7cff956acbcacec50707d4a97","ParentId":"sha256:95cc6c7b2f17b13e3a6f9f87e8194b2ae708ebf085241b497654fa65f38a9e69","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452596809,"Size":900887166,"VirtualSize":900887166,"Labels":{}},{"Id":"sha256:8c23db7050540e897c86ff0c649570a118fa0a84077088c6ca4dac6e3a6791b7","ParentId":"sha256:ad65b3079e8a72ebc8d62af03aaab198e268d43ca0b9f6a06b7fe0e6474776ca","RepoTags":["msi-query:latest"],"RepoDigests":null,"Created":1452523805,"Size":861553324,"VirtualSize":861553324,"Labels":{}},{"Id":"sha256:f0a779266d01512d2a1a928531e74766fb253edeba45809c4f082e8ec5d50670","ParentId":"sha256:fbcb4f6b2a05b3482f311725745bff9007e325004c3f7ae1dd35bc58df06842e","RepoTags":["msi-info:latest"],"RepoDigests":null,"Created":1452511923,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:aff1c503c5ae44588158601df6dbc12ac044ddc432e0fc4dcd55ac4502bd06b3","ParentId":"sha256:68b41e093d639bf96421ef8f7c640c81191e69afb07e92071c2b26873150bb65","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511800,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:2a1cb85d51d8831abc3c859ffc859f12a97ec2d45a8cd24b7001cc517c8efaf5","ParentId":"sha256:0d28d2a93f221c95db4a2dcbc830a4058735581edaa8219727923b11f7ba727a","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511725,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:78b1afc6b25453b60f6ad6318fa22a01dcbb89bac927276874b5158bb67bdf06","ParentId":"sha256:0d28d2a93f221c95db4a2dcbc830a4058735581edaa8219727923b11f7ba727a","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511493,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:ada7b3b8f9b03a2418182ea336856b30d6ff6c1ae5fa9bde8704672aac7b205c","ParentId":"sha256:0a6a6fa19905c53909d919d5d93529130eef2b291b1e23ce2e82ee5a668d3a2f","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511210,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:449ae9f0214d9fb31831543584a239c4f966e2c3e46c39cc3456c8d6ae73f116","ParentId":"sha256:b3159ed82ec992c87cfd286ce47980c29659dcd75863dec12d32c71c700394db","RepoTags":["msi/router:latest"],"RepoDigests":null,"Created":1449248273,"Size":738597082,"VirtualSize":738597082,"Labels":{}},{"Id":"sha256:45f71c6a133a1dc402cccf8a70cceb59fbead6d4865c106771c911c6c8c8d2c1","ParentId":"sha256:0c54db27bc09d2b675b119c6cd941cb9aa0a99dafb332e49cf8abc0ca0f4e783","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1446040620,"Size":524163635,"VirtualSize":524163635,"Labels":null},{"Id":"sha256:d542fb2378f28bceb495b6d2fdc376b1efb818ee40481274b90e21a8a2a442ae","ParentId":"sha256:bdc26345194feed9f315ffc97f696099d69901c3679951aff7df01fe2dae0de2","RepoTags":["java:8-jre"],"RepoDigests":null,"Created":1445668455,"Size":487598409,"VirtualSize":487598409,"Labels":null},{"Id":"sha256:fb2b3141e5110ce593a7303e2cb54544e78a83270eca86d1f2e65d02062d53c4","ParentId":"sha256:09e3bba8b0606384b923baedb03e5da655c73cf7c5497707d5550e2a4c7087d1","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1445322162,"Size":357092544,"VirtualSize":357092544,"Labels":null},{"Id":"sha256:03e046b4ffb94f437454f570c57c4635d63564b0261da2a9fd99936227408991","ParentId":"","RepoTags":["mongo:3.0.6"],"RepoDigests":["mongo@sha256:ab81e6f788788ef41b514da8352a0c06f47735f540d9a4d80b7f4436fbc563c3"],"Created":1444343134,"Size":261258830,"VirtualSize":261258830,"Labels":null},{"Id":"sha256:42014923291599c0ad9c1da557285d1a4d3c096dd9fbbb346189101931507640","ParentId":"sha256:55cf380dce7862cd7d6a4c793c08eef92282ad340302b5e89ff1a041f40cad85","RepoTags":["elasticsearch:1.7.1"],"RepoDigests":null,"Created":1441889674,"Size":522057737,"VirtualSize":522057737,"Labels":{}},{"Id":"sha256:1ad084004a05c1b41cccf7a6565fdcaedfb1888008dc2932a0d9fc3db4086d43","ParentId":"sha256:923d03bb54054411c7ec68e5a78a1b245d618e85172416757cd0b40d3015b6d4","RepoTags":["doreg.ytrailize.com:5000/oracle-java8:latest"],"RepoDigests":null,"Created":1434615254,"Size":650379473,"VirtualSize":650379473,"Labels":{}},{"Id":"sha256:0ebda6c3e27671a85d7438ceabdba098212634222f6a43f25e6c81e10f2b5094","ParentId":"sha256:c9fc0af95dc6e412dffd368623ca0a5b50206c62e3d0ce3acaff3eea2e7407d0","RepoTags":["hello-world:latest"],"RepoDigests":null,"Created":1429308098,"Size":910,"VirtualSize":910,"Labels":{}}][\n]"
17:16:53.656 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "[\r][\n]"
17:16:53.656 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "0[\r][\n]"
17:16:53.656 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-0 << "[\r][\n]"
17:16:53.658 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 << HTTP/1.1 200 OK
17:16:53.658 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 << Content-Type: application/json
17:16:53.658 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 << Server: Docker/1.12.1 (linux)
17:16:53.658 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 << Date: Mon, 29 Aug 2016 15:16:53 GMT
17:16:53.658 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-0 << Transfer-Encoding: chunked
17:16:53.660 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
17:16:53.667 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 2 * Client response received on thread pool-2-thread-1
2 < 200
2 < Content-Length: -1
2 < Content-Type: application/json
2 < Date: Mon, 29 Aug 2016 15:16:53 GMT
2 < Server: Docker/1.12.1 (linux)
2 < Transfer-Encoding: chunked
[{"Id":"sha256:ddb795388d57a4e04872558c9bf9a8a16bd0fd86421575daadedc80ad4492db5","ParentId":"","RepoTags":["elasticsearch:2.3.5"],"RepoDigests":["elasticsearch@sha256:6eecc2f2878a05bfc7a8f01e2b8f2f2ce8e5c3adb0799c8ef15248dbf1bb7815"],"Created":1470936135,"Size":345113199,"VirtualSize":345113199,"Labels":{}},{"Id":"sha256:ed220e379f1eeb5b5dbba86ddd23c830bbf24c29ea99b5c8aa46fe2710acf734","ParentId":"sha256:6bfb5131e38684aa353b6ffe51d69cef0d6e1fde50625424e38e970cdff0b774","RepoTags":["es-shield:1.0"],"RepoDigests":null,"Created":1468959314,"Size":355165793,"VirtualSize":355165793,"Labels":{}},{"Id":"sha256:d4d272b96f89c39aaee981a0b56a3a422cce0f16d734321b74e68bd2c7c262af","ParentId":"sha256:2b9d3765d8b5da2e2c34b49d8626a2a3b463fe32066c55d2eeb5d4bd796a8927","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1468958672,"Size":349241274,"VirtualSize":349241274,"Labels":{}},{"Id":"sha256:30356cbdb796d69c48bda9c24c05b2374b25bfaa7b7f81827fc4312e5cbd7c2e","ParentId":"sha256:d0390797eb4feaa966b5e4e0dfecf02e509ead64bfd8ab03dc42965447a0c1eb","RepoTags":["es2.3.4:latest"],"RepoDigests":null,"Created":1468953788,"Size":349238516,"VirtualSize":349238516,"Labels":{}},{"Id":"sha256:d0390797eb4feaa966b5e4e0dfecf02e509ead64bfd8ab03dc42965447a0c1eb","ParentId":"","RepoTags":["elasticsearch:latest"],"RepoDigests":null,"Created":1468002008,"Size":346568958,"VirtualSize":346568958,"Labels":{}},{"Id":"sha256:6f609da577b75550c2bc0675b8bac417e6562ea3194df0ead08a7df396dfecdc","ParentId":"sha256:630e66eb99f9115fefe3d874992b79a2bed9ba80a38ab83535eccba373fb94b2","RepoTags":["elasticsearch:2.1.1"],"RepoDigests":null,"Created":1453855490,"Size":345683838,"VirtualSize":345683838,"Labels":null},{"Id":"sha256:3876b81b5a81678926c601cd842040a69eb0456d295cd395e7a895a416cf7d91","ParentId":"sha256:039f1bb3922f20162d1f2e43dc308a21fb975eed0990f31fedd0cc19b4e335ab","RepoTags":["ubuntu:latest"],"RepoDigests":null,"Created":1453246284,"Size":187899635,"VirtualSize":187899635,"Labels":null},{"Id":"sha256:a7851fd94c37b8f0cfb6967cd816ee1a20f24eb417e7a2dbb69b076999964301","ParentId":"sha256:142d8d56d459f0988169a741b1d668c6c7b1ffd8896c595c910514c6d0478b8b","RepoTags":["msi/connection:latest"],"RepoDigests":null,"Created":1452600982,"Size":900832501,"VirtualSize":900832501,"Labels":{}},{"Id":"sha256:510fce1feea623a281610a0299b08069a5deb3b3f8ca2ebff282cf0135e5a3cb","ParentId":"sha256:fcd80bf465c39b74ad310e57c60773baf7d997a7c6be695675c258cbe3754769","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452600367,"Size":900887155,"VirtualSize":900887155,"Labels":{}},{"Id":"sha256:9ec317cd6c438ef4f0661548308670fba7255e817d9954aefd63d94129a7494f","ParentId":"sha256:7b6e796afe1f41071a1ebbf9d7773af331ef853515e979734a44120be6ab70dc","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452599845,"Size":900887155,"VirtualSize":900887155,"Labels":{}},{"Id":"sha256:48d67f95300babd5db06b6181fb86ea2dd730ab7cff956acbcacec50707d4a97","ParentId":"sha256:95cc6c7b2f17b13e3a6f9f87e8194b2ae708ebf085241b497654fa65f38a9e69","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452596809,"Size":900887166,"VirtualSize":900887166,"Labels":{}},{"Id":"sha256:8c23db7050540e897c86ff0c649570a118fa0a84077088c6ca4dac6e3a6791b7","ParentId":"sha256:ad65b3079e8a72ebc8d62af03aaab198e268d43ca0b9f6a06b7fe0e6474776ca","RepoTags":["msi-query:latest"],"RepoDigests":null,"Created":1452523805,"Size":861553324,"VirtualSize":861553324,"Labels":{}},{"Id":"sha256:f0a779266d01512d2a1a928531e74766fb253edeba45809c4f082e8ec5d50670","ParentId":"sha256:fbcb4f6b2a05b3482f311725745bff9007e325004c3f7ae1dd35bc58df06842e","RepoTags":["msi-info:latest"],"RepoDigests":null,"Created":1452511923,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:aff1c503c5ae44588158601df6dbc12ac044ddc432e0fc4dcd55ac4502bd06b3","ParentId":"sha256:68b41e093d639bf96421ef8f7c640c81191e69afb07e92071c2b26873150bb65","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511800,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:2a1cb85d51d8831abc3c859ffc859f12a97ec2d45a8cd24b7001cc517c8efaf5","ParentId":"sha256:0d28d2a93f221c95db4a2dcbc830a4058735581edaa8219727923b11f7ba727a","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511725,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:78b1afc6b25453b60f6ad6318fa22a01dcbb89bac927276874b5158bb67bdf06","ParentId":"sha256:0d28d2a93f221c95db4a2dcbc830a4058735581edaa8219727923b11f7ba727a","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511493,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:ada7b3b8f9b03a2418182ea336856b30d6ff6c1ae5fa9bde8704672aac7b205c","ParentId":"sha256:0a6a6fa19905c53909d919d5d93529130eef2b291b1e23ce2e82ee5a668d3a2f","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1452511210,"Size":735806942,"VirtualSize":735806942,"Labels":{}},{"Id":"sha256:449ae9f0214d9fb31831543584a239c4f966e2c3e46c39cc3456c8d6ae73f116","ParentId":"sha256:b3159ed82ec992c87cfd286ce47980c29659dcd75863dec12d32c71c700394db","RepoTags":["msi/router:latest"],"RepoDigests":null,"Created":1449248273,"Size":738597082,"VirtualSize":738597082,"Labels":{}},{"Id":"sha256:45f71c6a133a1dc402cccf8a70cceb59fbead6d4865c106771c911c6c8c8d2c1","ParentId":"sha256:0c54db27bc09d2b675b119c6cd941cb9aa0a99dafb332e49cf8abc0ca0f4e783","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1446040620,"Size":524163635,"VirtualSize":524163635,"Labels":null},{"Id":"sha256:d542fb2378f28bceb495b6d2fdc376b1efb818ee40481274b90e21a8a2a442ae","ParentId":"sha256:bdc26345194feed9f315ffc97f696099d69901c3679951aff7df01fe2dae0de2","RepoTags":["java:8-jre"],"RepoDigests":null,"Created":1445668455,"Size":487598409,"VirtualSize":487598409,"Labels":null},{"Id":"sha256:fb2b3141e5110ce593a7303e2cb54544e78a83270eca86d1f2e65d02062d53c4","ParentId":"sha256:09e3bba8b0606384b923baedb03e5da655c73cf7c5497707d5550e2a4c7087d1","RepoTags":["\u003cnone\u003e:\u003cnone\u003e"],"RepoDigests":["\u003cnone\u003e@\u003cnone\u003e"],"Created":1445322162,"Size":357092544,"VirtualSize":357092544,"Labels":null},{"Id":"sha256:03e046b4ffb94f437454f570c57c4635d63564b0261da2a9fd99936227408991","ParentId":"","RepoTags":["mongo:3.0.6"],"RepoDigests":["mongo@sha256:ab81e6f788788ef41b514da8352a0c06f47735f540d9a4d80b7f4436fbc563c3"],"Created":1444343134,"Size":261258830,"VirtualSize":261258830,"Labels":null},{"Id":"sha256:42014923291599c0ad9c1da557285d1a4d3c096dd9fbbb346189101931507640","ParentId":"sha256:55cf380dce7862cd7d6a4c793c08eef92282ad340302b5e89ff1a041f40cad85","RepoTags":["elasticsearch:1.7.1"],"RepoDigests":null,"Created":1441889674,"Size":522057737,"VirtualSize":522057737,"Labels":{}},{"Id":"sha256:1ad084004a05c1b41cccf7a6565fdcaedfb1888008dc2932a0d9fc3db4086d43","ParentId":"sha256:923d03bb54054411c7ec68e5a78a1b245d618e85172416757cd0b40d3015b6d4","RepoTags":["doreg.ytrailize.com:5000/oracle-java8:latest"],"RepoDigests":null,"Created":1434615254,"Size":650379473,"VirtualSize":650379473,"Labels":{}},{"Id":"sha256:0ebda6c3e27671a85d7438ceabdba098212634222f6a43f25e6c81e10f2b5094","ParentId":"sha256:c9fc0af95dc6e412dffd368623ca0a5b50206c62e3d0ce3acaff3eea2e7407d0","RepoTags":["hello-world:latest"],"RepoDigests":null,"Created":1429308098,"Size":910,"VirtualSize":910,"Labels":{}}]
17:16:53.817 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-0: Shutdown connection
17:16:53.817 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Connection discarded
17:16:53.817 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-0: Close connection
17:16:53.817 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection released: [id: 0][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
17:16:53.842 [pool-2-thread-2] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: com.github.dockerjava.core.command.CreateContainerCmdImpl@25eb7033[name=<null>,hostName=<null>,domainName=<null>,user=<null>,attachStdin=<null>,attachStdout=<null>,attachStderr=<null>,portSpecs={27017},tty=false,stdinOpen=false,stdInOnce=<null>,env={},cmd={mongod,--nojournal,--smallfiles,--syncdelay,0},entrypoint=<null>,image=mongo:3.0.6,volumes=com.github.dockerjava.api.model.Volumes@48b3ea31,workingDir=<null>,macAddress=<null>,networkDisabled=<null>,exposedPorts=com.github.dockerjava.api.model.ExposedPorts@a33d5a8,stopSignal=<null>,hostConfig=com.github.dockerjava.api.model.HostConfig@1280fc29[binds=com.github.dockerjava.api.model.Binds@da1019,blkioWeight=<null>,blkioWeightDevice=<null>,blkioDeviceReadBps=<null>,blkioDeviceReadIOps=<null>,blkioDeviceWriteBps=<null>,blkioDeviceWriteIOps=<null>,memorySwappiness=<null>,capAdd=<null>,capDrop=<null>,containerIDFile=<null>,cpuPeriod=<null>,cpuShares=<null>,cpuQuota=<null>,cpusetCpus=<null>,cpusetMems=<null>,devices=<null>,dns=<null>,dnsSearch=<null>,extraHosts=<null>,links=<null>,logConfig=<null>,lxcConf=<null>,memory=<null>,memorySwap=<null>,memoryReservation=<null>,kernelMemory=<null>,networkMode=<null>,oomKillDisable=<null>,oomScoreAdj=<null>,portBindings={27017/tcp=[Lcom.github.dockerjava.api.model.Ports$Binding;@782bd8ff},privileged=<null>,publishAllPorts=<null>,readonlyRootfs=<null>,restartPolicy=<null>,ulimits=<null>,volumesFrom=<null>,pidMode=<null>,securityOpts=<null>,cgroupParent=<null>,volumeDriver=<null>,shmSize=<null>],labels=<null>,networkingConfig=<null>,ipv4Address=<null>,ipv6Address=<null>,aliases=<null>,execution=com.github.dockerjava.jaxrs.CreateContainerCmdExec@74e080e0]
17:16:53.851 [pool-2-thread-2] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: default
17:16:53.851 [pool-2-thread-2] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
17:16:53.852 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection request: [route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
17:16:53.852 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection leased: [id: 1][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 1 of 2; total allocated: 1 of 20]
17:16:53.852 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {}->unix://localhost:80
17:16:53.852 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connecting to localhost/127.0.0.1:80
17:16:53.852 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connection established
17:16:53.852 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request POST /containers/create HTTP/1.1
17:16:53.852 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
17:16:53.852 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> POST /containers/create HTTP/1.1
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> Accept: application/json
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> Content-Type: application/json
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> Transfer-Encoding: chunked
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> Host: localhost:80
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> Connection: Keep-Alive
17:16:53.852 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 >> Accept-Encoding: gzip,deflate
17:16:53.902 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 3 * Sending client request on thread pool-2-thread-2
3 > POST unix://localhost:80/containers/create
3 > Accept: application/json
3 > Content-Type: application/json
{"PortSpecs":["27017"],"Tty":false,"OpenStdin":false,"Env":[],"Cmd":["mongod","--nojournal","--smallfiles","--syncdelay","0"],"Image":"mongo:3.0.6","Volumes":{},"ExposedPorts":{"27017/tcp":{}},"HostConfig":{"Binds":[],"PortBindings":{"27017/tcp":[{"HostIp":"","HostPort":""}]}}}
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "POST /containers/create HTTP/1.1[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "Accept: application/json[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "Content-Type: application/json[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "Transfer-Encoding: chunked[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "Host: localhost:80[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "Connection: Keep-Alive[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "Accept-Encoding: gzip,deflate[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "116[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "{"PortSpecs":["27017"],"Tty":false,"OpenStdin":false,"Env":[],"Cmd":["mongod","--nojournal","--smallfiles","--syncdelay","0"],"Image":"mongo:3.0.6","Volumes":{},"ExposedPorts":{"27017/tcp":{}},"HostConfig":{"Binds":[],"PortBindings":{"27017/tcp":[{"HostIp":"","HostPort":""}]}}}[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "0[\r][\n]"
17:16:53.902 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 >> "[\r][\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 << "HTTP/1.1 201 Created[\r][\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 << "Content-Type: application/json[\r][\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 << "Server: Docker/1.12.1 (linux)[\r][\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 << "Date: Mon, 29 Aug 2016 15:16:54 GMT[\r][\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 << "Content-Length: 90[\r][\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 << "[\r][\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-1 << "{"Id":"0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b","Warnings":null}[\n]"
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 << HTTP/1.1 201 Created
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 << Content-Type: application/json
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 << Server: Docker/1.12.1 (linux)
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 << Date: Mon, 29 Aug 2016 15:16:54 GMT
17:16:54.275 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-1 << Content-Length: 90
17:16:54.275 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
17:16:54.276 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 4 * Client response received on thread pool-2-thread-2
4 < 201
4 < Content-Length: 90
4 < Content-Type: application/json
4 < Date: Mon, 29 Aug 2016 15:16:54 GMT
4 < Server: Docker/1.12.1 (linux)
{"Id":"0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b","Warnings":null}
17:16:54.277 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-1: Shutdown connection
17:16:54.277 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Connection discarded
17:16:54.277 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-1: Close connection
17:16:54.277 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection released: [id: 1][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
17:16:54.280 [pool-2-thread-1] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: 0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b,com.github.dockerjava.jaxrs.StartContainerCmdExec@5bfb45aa
17:16:54.285 [pool-2-thread-1] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: default
17:16:54.285 [pool-2-thread-1] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
17:16:54.285 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection request: [route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
17:16:54.285 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection leased: [id: 2][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 1 of 2; total allocated: 1 of 20]
17:16:54.285 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {}->unix://localhost:80
17:16:54.286 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connecting to localhost/127.0.0.1:80
17:16:54.286 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connection established
17:16:54.286 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request POST /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/start HTTP/1.1
17:16:54.286 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
17:16:54.286 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
17:16:54.286 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> POST /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/start HTTP/1.1
17:16:54.287 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> Accept: application/json
17:16:54.287 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> Content-Type: application/json
17:16:54.287 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)
17:16:54.287 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> Transfer-Encoding: chunked
17:16:54.287 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> Host: localhost:80
17:16:54.287 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> Connection: Keep-Alive
17:16:54.287 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 >> Accept-Encoding: gzip,deflate
17:16:54.287 [pool-2-thread-2] DEBUG c.g.d.core.command.AbstrDockerCmd - Cmd: 0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b,false,com.github.dockerjava.jaxrs.InspectContainerCmdExec@52c023df
17:16:54.288 [pool-2-thread-2] DEBUG c.g.d.jaxrs.InspectContainerCmdExec - GET: JerseyWebTarget { unix://localhost:80/containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/json }
17:16:54.289 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 5 * Sending client request on thread pool-2-thread-1
5 > POST unix://localhost:80/containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/start
5 > Accept: application/json
5 > Content-Type: application/json
{}
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "POST /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/start HTTP/1.1[\r][\n]"
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "Accept: application/json[\r][\n]"
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "Content-Type: application/json[\r][\n]"
17:16:54.289 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 6 * Sending client request on thread pool-2-thread-2
6 > GET unix://localhost:80/containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/json
6 > Accept: application/json
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)[\r][\n]"
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "Transfer-Encoding: chunked[\r][\n]"
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "Host: localhost:80[\r][\n]"
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "Connection: Keep-Alive[\r][\n]"
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "Accept-Encoding: gzip,deflate[\r][\n]"
17:16:54.289 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "[\r][\n]"
17:16:54.289 [pool-2-thread-2] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: default
17:16:54.290 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "2[\r][\n]"
17:16:54.290 [pool-2-thread-2] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
17:16:54.290 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "{}[\r][\n]"
17:16:54.290 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection request: [route: {}->unix://localhost:80][total kept alive: 0; route allocated: 1 of 2; total allocated: 1 of 20]
17:16:54.290 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "0[\r][\n]"
17:16:54.290 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection leased: [id: 3][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 2 of 2; total allocated: 2 of 20]
17:16:54.290 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 >> "[\r][\n]"
17:16:54.290 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {}->unix://localhost:80
17:16:54.290 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connecting to localhost/127.0.0.1:80
17:16:54.290 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connection established
17:16:54.290 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request GET /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/json HTTP/1.1
17:16:54.290 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
17:16:54.290 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 >> GET /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/json HTTP/1.1
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 >> Accept: application/json
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 >> User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 >> Host: localhost:80
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 >> Connection: Keep-Alive
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 >> Accept-Encoding: gzip,deflate
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 >> "GET /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/json HTTP/1.1[\r][\n]"
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 >> "Accept: application/json[\r][\n]"
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 >> "User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)[\r][\n]"
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 >> "Host: localhost:80[\r][\n]"
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 >> "Connection: Keep-Alive[\r][\n]"
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 >> "Accept-Encoding: gzip,deflate[\r][\n]"
17:16:54.291 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 >> "[\r][\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 << "HTTP/1.1 400 Bad Request[\r][\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 << "Content-Type: application/json[\r][\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 << "Server: Docker/1.12.1 (linux)[\r][\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 << "Date: Mon, 29 Aug 2016 15:16:54 GMT[\r][\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 << "Content-Length: 97[\r][\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 << "[\r][\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.wire - http-outgoing-2 << "{"message":"starting container with HostConfig was deprecated since v1.10 and removed in v1.12"}[\n]"
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 << HTTP/1.1 400 Bad Request
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 << Content-Type: application/json
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 << Server: Docker/1.12.1 (linux)
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 << Date: Mon, 29 Aug 2016 15:16:54 GMT
17:16:54.291 [pool-2-thread-1] DEBUG org.apache.http.headers - http-outgoing-2 << Content-Length: 97
17:16:54.291 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
17:16:54.293 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "HTTP/1.1 200 OK[\r][\n]"
17:16:54.293 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "Content-Type: application/json[\r][\n]"
17:16:54.293 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "Server: Docker/1.12.1 (linux)[\r][\n]"
17:16:54.293 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "Date: Mon, 29 Aug 2016 15:16:54 GMT[\r][\n]"
17:16:54.293 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "Transfer-Encoding: chunked[\r][\n]"
17:16:54.293 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "[\r][\n]"
17:16:54.293 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "c8f[\r][\n]"
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "{"Id":"0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b","Created":"2016-08-29T15:16:53.903588112Z","Path":"/entrypoint.sh","Args":["mongod","--nojournal","--smallfiles","--syncdelay","0"],"State":{"Status":"created","Running":false,"Paused":false,"Restarting":false,"OOMKilled":false,"Dead":false,"Pid":0,"ExitCode":0,"Error":"","StartedAt":"0001-01-01T00:00:00Z","FinishedAt":"0001-01-01T00:00:00Z"},"Image":"sha256:03e046b4ffb94f437454f570c57c4635d63564b0261da2a9fd99936227408991","ResolvConfPath":"","HostnamePath":"","HostsPath":"","LogPath":"","Name":"/condescending_goodall","RestartCount":0,"Driver":"aufs","MountLabel":"","ProcessLabel":"","AppArmorProfile":"","ExecIDs":null,"HostConfig":{"Binds":[],"ContainerIDFile":"","LogConfig":{"Type":"json-file","Config":{}},"NetworkMode":"default","PortBindings":{"27017/tcp":[{"HostIp":"","HostPort":""}]},"RestartPolicy":{"Name":"","MaximumRetryCount":0},"AutoRemove":false,"VolumeDriver":"","VolumesFrom":null,"CapAdd":null,"CapDrop":null,"Dns":null,"DnsOptions":null,"DnsSearch":null,"ExtraHosts":null,"GroupAdd":null,"IpcMode":"","Cgroup":"","Links":null,"OomScoreAdj":0,"PidMode":"","Privileged":false,"PublishAllPorts":false,"ReadonlyRootfs":false,"SecurityOpt":null,"UTSMode":"","UsernsMode":"","ShmSize":67108864,"Runtime":"runc","ConsoleSize":[0,0],"Isolation":"","CpuShares":0,"Memory":0,"CgroupParent":"","BlkioWeight":0,"BlkioWeightDevice":null,"BlkioDeviceReadBps":null,"BlkioDeviceWriteBps":null,"BlkioDeviceReadIOps":null,"BlkioDeviceWriteIOps":null,"CpuPeriod":0,"CpuQuota":0,"CpusetCpus":"","CpusetMems":"","Devices":null,"DiskQuota":0,"KernelMemory":0,"MemoryReservation":0,"MemorySwap":0,"MemorySwappiness":-1,"OomKillDisable":false,"PidsLimit":0,"Ulimits":null,"CpuCount":0,"CpuPercent":0,"IOMaximumIOps":0,"IOMaximumBandwidth":0},"GraphDriver":{"Name":"aufs","Data":null},"Mounts":[{"Name":"e81c7c24f398bf215aa3aa6e9e2087538d5f6829e9cc6f0ea4c24f2c5a16ab5d","Source":"/var/lib/docker/volumes/e81c7c24f398bf215aa3aa6e9e2087538d5f6829e9cc6f0ea4c24f2c5a16ab5d/_data","Destination":"/data/db","Driver":"local","Mode":"","RW":true,"Propagation":""}],"Config":{"Hostname":"0b2bfdbfd171","Domainname":"","User":"","AttachStdin":false,"AttachStdout":false,"AttachStderr":false,"ExposedPorts":{"27017/tcp":{}},"Tty":false,"OpenStdin":false,"StdinOnce":false,"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","MONGO_MAJOR=3.0","MONGO_VERSION=3.0.6"],"Cmd":["mongod","--nojournal","--smallfiles","--syncdelay","0"],"Image":"mongo:3.0.6","Volumes":{"/data/db":{}},"WorkingDir":"","Entrypoint":["/entrypoint.sh"],"OnBuild":null,"Labels":{}},"NetworkSettings":{"Bridge":"","SandboxID":"","HairpinMode":false,"LinkLocalIPv6Address":"","LinkLocalIPv6PrefixLen":0,"Ports":null,"SandboxKey":"","SecondaryIPAddresses":null,"SecondaryIPv6Addresses":null,"EndpointID":"","Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"IPAddress":"","IPPrefixLen":0,"IPv6Gateway":"","MacAddress":"","Networks":{"bridge":{"IPAMConfig":null,"Links":null,"Aliases":null,"NetworkID":"","EndpointID":"","Gateway":"","IPAddress":"","IPPrefixLen":0,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"MacAddress":""}}}}[\n]"
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "[\r][\n]"
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "0[\r][\n]"
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.wire - http-outgoing-3 << "[\r][\n]"
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 << HTTP/1.1 200 OK
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 << Content-Type: application/json
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 << Server: Docker/1.12.1 (linux)
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 << Date: Mon, 29 Aug 2016 15:16:54 GMT
17:16:54.294 [pool-2-thread-2] DEBUG org.apache.http.headers - http-outgoing-3 << Transfer-Encoding: chunked
17:16:54.294 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
17:16:54.294 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 7 * Client response received on thread pool-2-thread-2
7 < 200
7 < Content-Length: -1
7 < Content-Type: application/json
7 < Date: Mon, 29 Aug 2016 15:16:54 GMT
7 < Server: Docker/1.12.1 (linux)
7 < Transfer-Encoding: chunked
{"Id":"0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b","Created":"2016-08-29T15:16:53.903588112Z","Path":"/entrypoint.sh","Args":["mongod","--nojournal","--smallfiles","--syncdelay","0"],"State":{"Status":"created","Running":false,"Paused":false,"Restarting":false,"OOMKilled":false,"Dead":false,"Pid":0,"ExitCode":0,"Error":"","StartedAt":"0001-01-01T00:00:00Z","FinishedAt":"0001-01-01T00:00:00Z"},"Image":"sha256:03e046b4ffb94f437454f570c57c4635d63564b0261da2a9fd99936227408991","ResolvConfPath":"","HostnamePath":"","HostsPath":"","LogPath":"","Name":"/condescending_goodall","RestartCount":0,"Driver":"aufs","MountLabel":"","ProcessLabel":"","AppArmorProfile":"","ExecIDs":null,"HostConfig":{"Binds":[],"ContainerIDFile":"","LogConfig":{"Type":"json-file","Config":{}},"NetworkMode":"default","PortBindings":{"27017/tcp":[{"HostIp":"","HostPort":""}]},"RestartPolicy":{"Name":"","MaximumRetryCount":0},"AutoRemove":false,"VolumeDriver":"","VolumesFrom":null,"CapAdd":null,"CapDrop":null,"Dns":null,"DnsOptions":null,"DnsSearch":null,"ExtraHosts":null,"GroupAdd":null,"IpcMode":"","Cgroup":"","Links":null,"OomScoreAdj":0,"PidMode":"","Privileged":false,"PublishAllPorts":false,"ReadonlyRootfs":false,"SecurityOpt":null,"UTSMode":"","UsernsMode":"","ShmSize":67108864,"Runtime":"runc","ConsoleSize":[0,0],"Isolation":"","CpuShares":0,"Memory":0,"CgroupParent":"","BlkioWeight":0,"BlkioWeightDevice":null,"BlkioDeviceReadBps":null,"BlkioDeviceWriteBps":null,"BlkioDeviceReadIOps":null,"BlkioDeviceWriteIOps":null,"CpuPeriod":0,"CpuQuota":0,"CpusetCpus":"","CpusetMems":"","Devices":null,"DiskQuota":0,"KernelMemory":0,"MemoryReservation":0,"MemorySwap":0,"MemorySwappiness":-1,"OomKillDisable":false,"PidsLimit":0,"Ulimits":null,"CpuCount":0,"CpuPercent":0,"IOMaximumIOps":0,"IOMaximumBandwidth":0},"GraphDriver":{"Name":"aufs","Data":null},"Mounts":[{"Name":"e81c7c24f398bf215aa3aa6e9e2087538d5f6829e9cc6f0ea4c24f2c5a16ab5d","Source":"/var/lib/docker/volumes/e81c7c24f398bf215aa3aa6e9e2087538d5f6829e9cc6f0ea4c24f2c5a16ab5d/_data","Destination":"/data/db","Driver":"local","Mode":"","RW":true,"Propagation":""}],"Config":{"Hostname":"0b2bfdbfd171","Domainname":"","User":"","AttachStdin":false,"AttachStdout":false,"AttachStderr":false,"ExposedPorts":{"27017/tcp":{}},"Tty":false,"OpenStdin":false,"StdinOnce":false,"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","MONGO_MAJOR=3.0","MONGO_VERSION=3.0.6"],"Cmd":["mongod","--nojournal","--smallfiles","--syncdelay","0"],"Image":"mongo:3.0.6","Volumes":{"/data/db":{}},"WorkingDir":"","Entrypoint":["/entrypoint.sh"],"OnBuild":null,"Labels":{}},"NetworkSettings":{"Bridge":"","SandboxID":"","HairpinMode":false,"LinkLocalIPv6Address":"","LinkLocalIPv6PrefixLen":0,"Ports":null,"SandboxKey":"","SecondaryIPAddresses":null,"SecondaryIPv6Addresses":null,"EndpointID":"","Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"IPAddress":"","IPPrefixLen":0,"IPv6Gateway":"","MacAddress":"","Networks":{"bridge":{"IPAMConfig":null,"Links":null,"Aliases":null,"NetworkID":"","EndpointID":"","Gateway":"","IPAddress":"","IPPrefixLen":0,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"MacAddress":""}}}}
17:16:54.296 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-2: Shutdown connection
17:16:54.297 [pool-2-thread-1] DEBUG o.a.h.impl.execchain.MainClientExec - Connection discarded
17:16:54.297 [pool-2-thread-1] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-2: Close connection
17:16:54.297 [pool-2-thread-1] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection released: [id: 2][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 1 of 2; total allocated: 1 of 20]
17:16:54.335 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-3: Shutdown connection
17:16:54.336 [pool-2-thread-2] DEBUG o.a.h.impl.execchain.MainClientExec - Connection discarded
17:16:54.336 [pool-2-thread-2] DEBUG o.a.h.i.c.DefaultManagedHttpClientConnection - http-outgoing-3: Close connection
17:16:54.336 [pool-2-thread-2] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection released: [id: 3][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
17:16:54.343 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 8 * Sending client request on thread dockerjava-jaxrs-async-0
8 > GET unix://localhost:80/containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/logs?stdout=true&stderr=true&follow=true
17:16:54.346 [dockerjava-jaxrs-async-0] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: default
17:16:54.348 [dockerjava-jaxrs-async-0] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context
17:16:54.348 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection request: [route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 2; total allocated: 0 of 20]
17:16:54.348 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection leased: [id: 4][route: {}->unix://localhost:80][total kept alive: 0; route allocated: 1 of 2; total allocated: 1 of 20]
17:16:54.348 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Opening connection {}->unix://localhost:80
17:16:54.348 [dockerjava-jaxrs-async-0] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connecting to localhost/127.0.0.1:80
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG o.a.h.i.c.DefaultHttpClientConnectionOperator - Connection established
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request GET /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/logs?stdout=true&stderr=true&follow=true HTTP/1.1
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> GET /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/logs?stdout=true&stderr=true&follow=true HTTP/1.1
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> Host: localhost:80
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> Connection: Keep-Alive
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> Accept-Encoding: gzip,deflate
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "GET /containers/0b2bfdbfd171ed3260d2d02feb2e334b825391a357fb8e35fb7caa6aaa59571b/logs?stdout=true&stderr=true&follow=true HTTP/1.1[\r][\n]"
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)[\r][\n]"
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "Host: localhost:80[\r][\n]"
17:16:54.349 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "Connection: Keep-Alive[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "Accept-Encoding: gzip,deflate[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "HTTP/1.1 200 OK[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Server: Docker/1.12.1 (linux)[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Date: Mon, 29 Aug 2016 15:16:54 GMT[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Content-Type: text/plain; charset=utf-8[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Transfer-Encoding: chunked[\r][\n]"
17:16:54.350 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "[\r][\n]"
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "0[\r][\n]"
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "[\r][\n]"
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << HTTP/1.1 200 OK
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Server: Docker/1.12.1 (linux)
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Date: Mon, 29 Aug 2016 15:16:54 GMT
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Content-Type: text/plain; charset=utf-8
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Transfer-Encoding: chunked
17:16:54.351 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
17:16:54.352 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection [id: 4][route: {}->unix://localhost:80] can be kept alive indefinitely
17:16:54.352 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection released: [id: 4][route: {}->unix://localhost:80][total kept alive: 1; route allocated: 1 of 2; total allocated: 1 of 20]
17:16:54.352 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 9 * Client response received on thread dockerjava-jaxrs-async-0
9 < 200
9 < Content-Length: -1
9 < Content-Type: application/json;charset=utf-8
9 < Date: Mon, 29 Aug 2016 15:16:54 GMT
9 < Server: Docker/1.12.1 (linux)
9 < Transfer-Encoding: chunked
17:17:13.848 [pool-1-thread-1] ERROR com.whisk.docker.MongodbServiceSpec - Exception during container initialization
java.util.concurrent.TimeoutException: Futures timed out after [20 seconds]
Hi, I'm using spotify docker client, official postgres image and docker checker from your example. Without that sleep slick is unable to connect to postgres.
class CatRepositorySlickTest extends Specification with DockerPostgresService with DockerTestKit {
"should save things to db and read them" >> { implicit ee: ExecutionEnv =>
import scala.concurrent.duration._
Await.result(isContainerReady(postgresContainer), 10.seconds)
Thread.sleep(5000)
<code working with postgres db>
....
}
Full code is here
https://github.com/fokot/docker-scala/blob/master/src/test/scala/fokot/docker/scala/service/CatRepositorySlickTest.scala
After cloning the repo I tried to run the tests to ensure my machine fulfilled all requirements. I can't seem to make any test in docker-it-scala pass. I suspect my docker-toolbox installation is somehow not ready to be used by docker-it-scala.
I've seen other issues where a DOCKER_HOST env_var may be set. I've tried 'https://192.168.99.100:2376' without any luck. Any pointers more than welcome.
Hi,
How do I run the equivalent of this docker command?
docker run -p 4200:4200 -p 4300:4300 -p 5432:5432 --env CRATE_HEAP_SIZE=2g crate/crate:2.1.5 -Cnetwork.host=site
I am particularly interested in the last part, the ARGUMENTS: -Cnetwork.host=site ?
Thanks,
A
I guess would be very valuable a room on gitter for this project
I'm trying to run Kafka with Zookeeper like this:
val KafkaAdvertisedPort = 9092
val ZookeeperDefaultPort = 2181
lazy val zookeeperContainer = DockerContainer("wurstmeister/zookeeper", Some("zookeeper"))
.withPorts(ZookeeperDefaultPort -> Some(ZookeeperDefaultPort))
.withReadyChecker(DockerReadyChecker.Always)
lazy val kafkaContainer = DockerContainer("wurstmeister/kafka")
.withLinks(ContainerLink(zookeeperContainer, "zookeeper"))
.withPorts(KafkaAdvertisedPort -> Some(KafkaAdvertisedPort))
.withEnv(
s"KAFKA_ADVERTISED_HOST_NAME=0.0.0.0",
s"KAFKA_ZOOKEEPER_CONNECT=zookeeper:$ZookeeperDefaultPort",
"KAFKA_CREATE_TOPICS=screening-response:1:1,screening-request:1:1"
)
.withVolumes(VolumeMapping("/var/run/docker.sock", "/var/run/docker.sock", true) :: Nil)
// .withReadyChecker(DockerReadyChecker.LogLineContains("kafka entered RUNNING state"))
.withReadyChecker(DockerReadyChecker.LogLineContains("started (kafka.server.KafkaServer)"))
abstract override def dockerContainers: List[DockerContainer] =
zookeeperContainer :: kafkaContainer :: super.dockerContainers
Kafka always times out in connecting to zookeeper. I even set StartContainersTimeout to 60 seconds, didn't help. But running from docker-compose is without problem. What this an be?
version: '2'
services:
zookeeper:
image: wurstmeister/zookeeper
ports:
- "2181:2181"
kafka:
image: wurstmeister/kafka
ports:
- "9092:9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: 0.0.0.0
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_CREATE_TOPICS: "screening-response:1:1,screening-request:1:1"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
depends_on: [zookeeper]
@viktortnk This is a brilliant tool, thank you for open sourcing it. I was wondering if there is an SBT plugin that allows controlling Docker state per application as opposed to per test suite, something with the locking guarantees in place.
Now the only perceivable drawback we are experiencing with this is the once per test suite running mode. As far as I know ScalaTest doesn't offer a global test setup and teardown phase, which is why we usually take to SBT for this kind of task.
Is this necessary or is there another way? Alternatively I might have a go and an SBT plugin based on this if you don't mind.
Is there a chance to get this compiled and uploaded for scala 2.12?
I saw that 2.12 is added as cross compiled version, but so far it is not pushed to maven central.
I've used docker-it-scala before, and now coming back I'm not able to get all the bits together.
What's changed is I'm using Scala 2.12 and I wish to continue doing so. So we're talking about the 0.9.0-RC3 (current master) version.
I define my test as:
class SomeTest extends FlatSpec with Matchers with DockerSomeService with DockerTestKit {
Where and how should I define the implicit def dockerFactory: DockerFactory
that DockerKit
needs?
There are two: Docker-java and the Spotify client. I'm running docker-machine
on macOS and would like things "just to work".
Thanks for pointers.
Hi. I'm much attracted to your way of running Docker containers; it's elegant, and vastly simpler than the equivalent in Java which I have to hand. The only problem is that it doesn't work, for me. The test example I've reduced my code to is so simple that I suspect the error may be in your code, not mine.
Here's my code, which I'm running with Scala 2.11.8 on a Mac running El Capitan:
import com.whisk.docker.{DockerContainer, DockerKit, DockerReadyChecker}
import scala.concurrent.duration._
trait KafkaDockerContainer extends DockerKit {
override val StartContainersTimeout = 20.seconds // Was 60.seconds
val KafkaAdvertisedHost = "192.168.99.100"
val KafkaAdvertisedPort = 9092
val ZookeeperDefaultPort = 2181
lazy val kafkaContainer = DockerContainer("spotify/kafka")
.withPorts(
KafkaAdvertisedPort -> Some(KafkaAdvertisedPort),
ZookeeperDefaultPort -> Some(ZookeeperDefaultPort))
.withEnv(
s"ADVERTISED_PORT=$KafkaAdvertisedPort",
s"ADVERTISED_HOST=$KafkaAdvertisedHost")
.withReadyChecker(DockerReadyChecker.LogLineContains("kafka entered RUNNING state"))
abstract override def dockerContainers: List[DockerContainer] =
kafkaContainer :: super.dockerContainers
}
I was using 0.8.3 of your code, but upgrading to 0.9.0-M5 also reproduces the problem.
Running docker run spotify/kafka
at the command line shows the container does start, and the expected string is produced; however running the above Scala results in:
Exception in thread "main" java.lang.RuntimeException: Cannot run all required containers
at com.whisk.docker.DockerKit$class.startAllOrFail(DockerKit.scala:61)
with no further explanation.
Setting logging to debug gives me, inter alia the following, which hasn't particularly shed light for me:
v14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Executing request GET /containers/6de0e43452a10b117f3ed713dcad961b436a9185bb497f4b915318c8b071480c/logs?stdout=true&stderr=true&follow=true HTTP/1.1
14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Target auth state: UNCHALLENGED
14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Proxy auth state: UNCHALLENGED
14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> GET /containers/6de0e43452a10b117f3ed713dcad961b436a9185bb497f4b915318c8b071480c/logs?stdout=true&stderr=true&follow=true HTTP/1.1
14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)
14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> Host: 192.168.99.100:2376
14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> Connection: Keep-Alive
14:25:58.427 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 >> Accept-Encoding: gzip,deflate
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "GET /containers/6de0e43452a10b117f3ed713dcad961b436a9185bb497f4b915318c8b071480c/logs?stdout=true&stderr=true&follow=true HTTP/1.1[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "User-Agent: Jersey/2.23.1 (Apache HttpClient 4.5)[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "Host: 192.168.99.100:2376[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "Connection: Keep-Alive[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "Accept-Encoding: gzip,deflate[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 >> "[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "HTTP/1.1 200 OK[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Server: Docker/1.12.0 (linux)[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Date: Fri, 26 Aug 2016 12:25:58 GMT[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Content-Type: text/plain; charset=utf-8[\r][\n]"
14:25:58.428 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "Transfer-Encoding: chunked[\r][\n]"
14:25:58.429 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "[\r][\n]"
14:25:58.429 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << HTTP/1.1 200 OK
14:25:58.429 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Server: Docker/1.12.0 (linux)
14:25:58.429 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Date: Fri, 26 Aug 2016 12:25:58 GMT
14:25:58.429 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Content-Type: text/plain; charset=utf-8
14:25:58.429 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.headers - http-outgoing-4 << Transfer-Encoding: chunked
14:25:58.429 [dockerjava-jaxrs-async-0] DEBUG o.a.h.impl.execchain.MainClientExec - Connection can be kept alive indefinitely
14:25:58.430 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "0[\r][\n]"
14:25:58.430 [dockerjava-jaxrs-async-0] DEBUG org.apache.http.wire - http-outgoing-4 << "[\r][\n]"
14:25:58.430 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection [id: 4][route: {s}->https://192.168.99.100:2376][state: O="michael."] can be kept alive indefinitely
14:25:58.430 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory$1 - Connection released: [id: 4][route: {s}->https://192.168.99.100:2376][state: O="michael."][total kept alive: 1; route allocated: 1 of 2; total allocated: 1 of 20]
14:25:58.430 [dockerjava-jaxrs-async-0] DEBUG c.g.d.j.JerseyDockerCmdExecFactory - 9 * Client response received on thread dockerjava-jaxrs-async-0
9 < 200
9 < Content-Length: -1
9 < Content-Type: application/json;charset=utf-8
9 < Date: Fri, 26 Aug 2016 12:25:58 GMT
9 < Server: Docker/1.12.0 (linux)
9 < Transfer-Encoding: chunked14:26:18.246 [main] ERROR test.AsyncBootstrapper$ - Exception during container initialization
java.util.concurrent.TimeoutException: Futures timed out after [20 seconds]
at scala.concurrent.impl.Promise$DefaultPromise.ready(Promise.scala:219) ~[scala-library-2.11.8.jar:na]
at scala.concurrent.impl.Promise$DefaultPromise.result(Promise.scala:223) ~[scala-library-2.11.8.jar:na]
at scala.concurrent.Await$$anonfun$result$1.apply(package.scala:190) ~[scala-library-2.11.8.jar:na]
at scala.concurrent.BlockContext$DefaultBlockContext$.blockOn(BlockContext.scala:53) ~[scala-library-2.11.8.jar:na]
at scala.concurrent.Await$.result(package.scala:190) ~[scala-library-2.11.8.jar:na]
at com.whisk.docker.DockerKit$class.startAllOrFail(DockerKit.scala:53) ~[docker-testkit-core_2.11-0.9.0-M5-michael.jar:0.9.0-M5-michael]
...following which there is a DELETE request to https://192.168.99.100:2376/containers/6de0e43452a10b117f3ed713dcad961b436a9185bb497f4b915318c8b071480c?v=true&force=true and the nascent container is then deleted.
By chance, #48 appeared whilst I was in the middle of getting very confused trying to step-debug the code, so I tried including .withLogLineReceiver (LogLineReceiver (true, (s : String) => println ("*** " + s) ))
, with a version of your code with the changes from that PR included, to examine the container log, but nothing turned up.
Having now exhausted my ideas, and, so Google would suggest, also the wider Internet's prior experience, can I turn this over to you to investigate, please?
Im setting up a project to build a REST service. I would like to begin using docker-it-scala since it seems like the perfect platform to scale your integration tests on. However as a first step I want to dockerize only my rest-service using docker-it-scala. Looking over the examples the use of docker-it-scala looks to be more aimed at putting the support systems in docker containers while still running the SUT from SBT. If I would like to also have the SUT in a docker container would I define this from docker-it-scala also or should I use some other tool such as sbt-docker?
Are there any example project doing this I can look at?
Thanks for a great library!
I've found that I can use either withReadyChecker(DockerReadyChecker.LogLineContains("foo"))
or withLogLineReceiver(LogLineReceiver(...))
, but I can't use both at the same time. If I add the log line receiver then the ready checker never fires.
Is this expected?
Ideally I'd like to do the following:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.