@Test public void testContainerInspect() throws IOException { String json = Resources.toString(getResource("container/inspect-4fa6e0f0c678.json"), Charsets.UTF_8); MockWebServer server = new MockWebServer(); server.enqueue(new MockResponse().setBody(json)); server.play(); Docker docker = createDockerForMock(server); ContainerInfo containerInfo = docker.containerInspect("4fa6e0f0c678"); assertNotNull(containerInfo); }
@Test public void testContainerTop() throws IOException { String json = Resources.toString(getResource("container/container-top.json"), Charsets.UTF_8); MockWebServer server = new MockWebServer(); server.enqueue(new MockResponse().setBody(json)); server.play(); Docker docker = createDockerForMock(server); Top top = docker.containerTop("e90e34656806"); assertNotNull(top); assertEquals(top.getProcesses().length, 2); }
@Test public void testListContainers() throws IOException { String json = Resources.toString(getResource("container/containers-all.json"), Charsets.UTF_8); MockWebServer server = new MockWebServer(); server.enqueue(new MockResponse().setBody(json)); server.play(); Docker docker = createDockerForMock(server); List<Container> containers = docker.containers(1, 1, null, null, 1); assertNotNull(containers); assertEquals(containers.size(), 4); assertContainers(containers); }
@Test public void testContainerCreate() throws IOException { String json = Resources.toString(getResource("container/create-response.json"), Charsets.UTF_8); MockWebServer server = new MockWebServer(); server.enqueue(new MockResponse().setBody(json)); server.play(); Docker docker = createDockerForMock(server); ContainerConfig cfg = new ContainerConfig(); cfg.setImage("base"); cfg.setCmd(new String[] {"date"}); ContainerCreateStatus containerCreateStatus = docker.containerCreate(cfg, null); assertNotNull(containerCreateStatus); assertEquals(containerCreateStatus.getId(), "e90e34656806"); }
@Test(expected = DockerApiConnectionException.class) public void shouldWrapJaxRsException() { given(docker.containers(anyInt(), anyInt(), anyString(), anyString(), anyInt())) .willThrow(ProcessingException.class); Dockers.getUsedPorts(docker); }
@Test public void shouldRetrievePublicPort() { Port port = new Port(); port.setPrivatePort(1); port.setPublicPort(2); Container container = new Container(); container.setPorts(Arrays.asList(port)); given(docker.containers(anyInt(), anyInt(), anyString(), anyString(), anyInt())) .willReturn(Arrays.asList(container)); // When Set<Integer> ports = Dockers.getUsedPorts(docker); // Then assertEquals(1, ports.size()); assertEquals(port.getPublicPort(), ports.iterator().next()); }
/** * Obtain a {@link DockerPlatform} using the {@link LocalPlatform} as the client {@link Platform} * and automatically configuring the Docker environment. * * @return a {@link DockerPlatform} using the {@link LocalPlatform} as the client {@link Platform} */ public static DockerPlatform localClient() { return clientAt(LocalPlatform.get(), Docker.auto()); }
/** * Obtain the {@link InetAddress} of the Docker daemon. * * @return the {@link InetAddress} of the Docker daemon. */ @Override public InetAddress getAddress() { return docker.getDaemonInetAddress(clientPlatform); }