@Test public void testConfigBuilder() { Builder builder = Config.builder().memory(1024) .cpuShares(100).cmd(ImmutableList.<String> of("/opt/jboss/wildfly/bin/standalone.sh", "-b", "0.0.0.0")) .env(ImmutableList.<String> of("JAVA_HOME=/opt/jdk-1.8", "MGMT_USER=admin", "MGMT_PASSWORD=Schroedinger's Cat")); TemplateOptions options = DockerTemplateOptions.Builder.configBuilder(builder); Builder builderInOpts = options.as(DockerTemplateOptions.class).getConfigBuilder(); assertNotNull(builderInOpts); Config configFromOptions = builderInOpts.build(); assertEquals(configFromOptions, builder.build()); assertEquals(configFromOptions.env(), ImmutableList.<String> of("JAVA_HOME=/opt/jdk-1.8", "MGMT_USER=admin", "MGMT_PASSWORD=Schroedinger's Cat")); }
containerConfigBuilder.cpuShares(templateOptions.getCpuShares()); containerConfigBuilder.openStdin(templateOptions.getOpenStdin()); containerConfigBuilder.env(templateOptions.getEnv());
@Test public void testFromConfig() { Config origConfig = Config.builder() .hostname("6c9932f478bd") .env(ImmutableList.of("PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")) .image("57e570db16baba1e8c0d6f3c15868ddb400f64ff76ec948e65c3ca3f15fb3587") .domainname("") .user("") .cmd(ImmutableList.of("-name", "7a:63:a2:39:7b:0f")) .entrypoint(ImmutableList.of("/home/weave/weaver", "-iface", "ethwe", "-wait", "5")) .image("zettio/weave") .workingDir("/home/weave") .exposedPorts(ImmutableMap.of("6783/tcp", ImmutableMap.of(), "6783/udp", ImmutableMap.of())) .build(); Config newConfig = Config.builder().fromConfig(origConfig).build(); assertThat(origConfig).isEqualTo(newConfig); }
containerConfigBuilder.cpuShares(templateOptions.getCpuShares()); containerConfigBuilder.openStdin(templateOptions.getOpenStdin()); containerConfigBuilder.env(templateOptions.getEnv());
containerConfigBuilder.cpuShares(templateOptions.getCpuShares()); containerConfigBuilder.openStdin(templateOptions.getOpenStdin()); containerConfigBuilder.env(templateOptions.getEnv());
.openStdin(false) .stdinOnce(false) .env(null) .cmd(ImmutableList.of("/usr/sbin/sshd", "-D")) .image("jclouds/ubuntu")
containerConfigBuilder.cpuShares(templateOptions.getCpuShares()); containerConfigBuilder.openStdin(templateOptions.getOpenStdin()); containerConfigBuilder.env(templateOptions.getEnv());
.config(Config.builder() .hostname("6c9932f478bd") .env(ImmutableList.of("PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")) .image("zettio/weave") .domainname("")
.domainname("") .entrypoint(null) .env(ImmutableList.<String> of("PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")) .exposedPorts(null) .hostname("ba033ac44011")
.openStdin(false) .stdinOnce(false) .env(ImmutableList.of("FOO=bar", "BAZ=quux")) .cmd(ImmutableList.of("date"))
"comment", Config.builder().cmd(ImmutableList.of("/bin/sh", "-c", "echo hello world")) .env(ImmutableList.of( "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "HOME=/root", .build(), Config.builder().cmd(ImmutableList.of("/bin/sh", "-c", "echo hello world")) .env(ImmutableList.of( "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "HOME=/root",
@Test(dependsOnMethods = "testImageCreated") public void testAdvancedConfig() throws RunNodesException { final String portId = SSH_PORT + "/tcp"; final DockerTemplateOptions options = DockerTemplateOptions.Builder .configBuilder( Config.builder().env(ImmutableList.<String> of("SSH_PORT=" + SSH_PORT, "ROOT_PASSWORD=jcloudsRulez")) .exposedPorts(ImmutableMap.<String, Object> of(portId, Maps.newHashMap())) .hostConfig(HostConfig.builder().networkMode("bridge") .portBindings(ImmutableMap.<String, List<Map<String, String>>> of(portId, Lists.<Map<String, String>>newArrayList(ImmutableMap.of("HostPort", String.valueOf(SSH_PORT_BRIDGE))))) .build()) .image("test-if-this-value-is-correctly-overriden")) .overrideLoginUser("root").overrideLoginPassword("jcloudsRulez").blockOnPort(SSH_PORT_BRIDGE, 30); final Template template = view.getComputeService().templateBuilder().imageId(image.id()).options(options).build(); String nodeId = null; try { NodeMetadata node = Iterables .getOnlyElement(view.getComputeService().createNodesInGroup("ssh-net-bridge", 1, template)); nodeId = node.getId(); ExecResponse response = view.getComputeService().runScriptOnNode(nodeId, "sh -c 'true'", wrapInInitScript(false)); assertEquals(response.getExitStatus(), 0); } finally { if (nodeId != null) view.getComputeService().destroyNode(nodeId); } }
public Builder fromConfig(Config in) { return hostname(in.hostname()).domainname(in.domainname()).user(in.user()).memory(in.memory()) .memorySwap(in.memorySwap()).cpuShares(in.cpuShares()).attachStdin(in.attachStdin()) .attachStdout(in.attachStdout()).attachStderr(in.attachStderr()).tty(in.tty()) .openStdin(in.openStdin()).stdinOnce(in.stdinOnce()).env(in.env()).cmd(in.cmd()) .entrypoint(in.entrypoint()).image(in.image()).volumes(in.volumes()).workingDir(in.workingDir()) .networkDisabled(in.networkDisabled()).exposedPorts(in.exposedPorts()) .securityOpts(in.securityOpts()).hostConfig(in.hostConfig()); }
public void testPortFromEnvironmentVariables() { Config config = Config.builder().image("alpine-ext:3.2").env(ImmutableList.of("FOO=bar", "SSH_PORT=2345")) .build(); Container container = Container.builder().id("id").config(config).build(); assertEquals(customLoginPortFromImage.apply(container).get().intValue(), 2345); }
public Builder fromConfig(Config in) { return hostname(in.hostname()).domainname(in.domainname()).user(in.user()).memory(in.memory()) .memorySwap(in.memorySwap()).cpuShares(in.cpuShares()).attachStdin(in.attachStdin()) .attachStdout(in.attachStdout()).attachStderr(in.attachStderr()).tty(in.tty()) .openStdin(in.openStdin()).stdinOnce(in.stdinOnce()).env(in.env()).cmd(in.cmd()) .entrypoint(in.entrypoint()).image(in.image()).volumes(in.volumes()).workingDir(in.workingDir()) .networkDisabled(in.networkDisabled()).exposedPorts(in.exposedPorts()) .securityOpts(in.securityOpts()).hostConfig(in.hostConfig()); }
public Builder fromConfig(Config in) { return hostname(in.hostname()).domainname(in.domainname()).user(in.user()).memory(in.memory()) .memorySwap(in.memorySwap()).cpuShares(in.cpuShares()).attachStdin(in.attachStdin()) .attachStdout(in.attachStdout()).attachStderr(in.attachStderr()).tty(in.tty()) .openStdin(in.openStdin()).stdinOnce(in.stdinOnce()).env(in.env()).cmd(in.cmd()) .entrypoint(in.entrypoint()).image(in.image()).volumes(in.volumes()).workingDir(in.workingDir()) .networkDisabled(in.networkDisabled()).exposedPorts(in.exposedPorts()) .securityOpts(in.securityOpts()).hostConfig(in.hostConfig()); }
public Builder fromConfig(Config in) { return hostname(in.hostname()).domainname(in.domainname()).user(in.user()).memory(in.memory()) .memorySwap(in.memorySwap()).cpuShares(in.cpuShares()).attachStdin(in.attachStdin()) .attachStdout(in.attachStdout()).attachStderr(in.attachStderr()).tty(in.tty()) .openStdin(in.openStdin()).stdinOnce(in.stdinOnce()).env(in.env()).cmd(in.cmd()) .entrypoint(in.entrypoint()).image(in.image()).volumes(in.volumes()).workingDir(in.workingDir()) .networkDisabled(in.networkDisabled()).exposedPorts(in.exposedPorts()).securityOpts(in.securityOpts()) .hostConfig(in.hostConfig()).binds(in.binds()).links(in.links()).lxcConf(in.lxcConf()) .portBindings(in.portBindings()).publishAllPorts(in.publishAllPorts()).privileged(in.privileged()) .dns(in.dns()).dnsSearch(in.dnsSearch()).volumesFrom(in.volumesFrom()).capAdd(in.capAdd()) .capDrop(in.capDrop()).restartPolicy(in.restartPolicy()); }