Container Group Args
data class ContainerGroupArgs(val acrRegistryInfos: Output<List<ContainerGroupAcrRegistryInfoArgs>>? = null, val autoCreateEip: Output<Boolean>? = null, val autoMatchImageCache: Output<Boolean>? = null, val containerGroupName: Output<String>? = null, val containers: Output<List<ContainerGroupContainerArgs>>? = null, val cpu: Output<Double>? = null, val dnsConfig: Output<ContainerGroupDnsConfigArgs>? = null, val eciSecurityContext: Output<ContainerGroupEciSecurityContextArgs>? = null, val eipBandwidth: Output<Int>? = null, val eipInstanceId: Output<String>? = null, val hostAliases: Output<List<ContainerGroupHostAliasArgs>>? = null, val imageRegistryCredentials: Output<List<ContainerGroupImageRegistryCredentialArgs>>? = null, val initContainers: Output<List<ContainerGroupInitContainerArgs>>? = null, val insecureRegistry: Output<String>? = null, val instanceType: Output<String>? = null, val memory: Output<Double>? = null, val plainHttpRegistry: Output<String>? = null, val ramRoleName: Output<String>? = null, val resourceGroupId: Output<String>? = null, val restartPolicy: Output<String>? = null, val securityGroupId: Output<String>? = null, val tags: Output<Map<String, Any>>? = null, val volumes: Output<List<ContainerGroupVolumeArgs>>? = null, val vswitchId: Output<String>? = null, val zoneId: Output<String>? = null) : ConvertibleToJava<ContainerGroupArgs>
Provides ECI Container Group resource. For information about ECI Container Group and how to use it, see What is Container Group.
NOTE: Available in v1.111.0+.
Example Usage
Basic Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.eci.ContainerGroup;
import com.pulumi.alicloud.eci.ContainerGroupArgs;
import com.pulumi.alicloud.eci.inputs.ContainerGroupContainerArgs;
import com.pulumi.alicloud.eci.inputs.ContainerGroupInitContainerArgs;
import com.pulumi.alicloud.eci.inputs.ContainerGroupVolumeArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ContainerGroup("example", ContainerGroupArgs.builder()
.containerGroupName("tf-testacc-eci-gruop")
.cpu(8)
.memory(16)
.restartPolicy("OnFailure")
.securityGroupId(alicloud_security_group.group().id())
.vswitchId(data.alicloud_vpcs().default().vpcs()[0].vswitch_ids()[0])
.tags(Map.of("TF", "create"))
.containers(
ContainerGroupContainerArgs.builder()
.image("registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:alpine")
.name("nginx")
.workingDir("/tmp/nginx")
.imagePullPolicy("IfNotPresent")
.commands(
"/bin/sh",
"-c",
"sleep 9999")
.volumeMounts(ContainerGroupContainerVolumeMountArgs.builder()
.mountPath("/tmp/test")
.readOnly(false)
.name("empty1")
.build())
.ports(ContainerGroupContainerPortArgs.builder()
.port(80)
.protocol("TCP")
.build())
.environmentVars(ContainerGroupContainerEnvironmentVarArgs.builder()
.key("test")
.value("nginx")
.build())
.livenessProbes(ContainerGroupContainerLivenessProbeArgs.builder()
.periodSeconds("5")
.initialDelaySeconds("5")
.successThreshold("1")
.failureThreshold("3")
.timeoutSeconds("1")
.execs(ContainerGroupContainerLivenessProbeExecArgs.builder()
.commands("cat /tmp/healthy")
.build())
.build())
.readinessProbes(ContainerGroupContainerReadinessProbeArgs.builder()
.periodSeconds("5")
.initialDelaySeconds("5")
.successThreshold("1")
.failureThreshold("3")
.timeoutSeconds("1")
.execs(ContainerGroupContainerReadinessProbeExecArgs.builder()
.commands("cat /tmp/healthy")
.build())
.build())
.build(),
ContainerGroupContainerArgs.builder()
.image("registry-vpc.cn-beijing.aliyuncs.com/eci_open/centos:7")
.name("centos")
.commands(
"/bin/sh",
"-c",
"sleep 9999")
.build())
.initContainers(ContainerGroupInitContainerArgs.builder()
.name("init-busybox")
.image("registry-vpc.cn-beijing.aliyuncs.com/eci_open/busybox:1.30")
.imagePullPolicy("IfNotPresent")
.commands("echo")
.args("hello initcontainer")
.build())
.volumes(
ContainerGroupVolumeArgs.builder()
.name("empty1")
.type("EmptyDirVolume")
.build(),
ContainerGroupVolumeArgs.builder()
.name("empty2")
.type("EmptyDirVolume")
.build())
.build());
}
}
Content copied to clipboard
Import
ECI Container Group can be imported using the id, e.g.
$ pulumi import alicloud:eci/containerGroup:ContainerGroup example <container_group_id>
Content copied to clipboard
Constructors
Link copied to clipboard
fun ContainerGroupArgs(acrRegistryInfos: Output<List<ContainerGroupAcrRegistryInfoArgs>>? = null, autoCreateEip: Output<Boolean>? = null, autoMatchImageCache: Output<Boolean>? = null, containerGroupName: Output<String>? = null, containers: Output<List<ContainerGroupContainerArgs>>? = null, cpu: Output<Double>? = null, dnsConfig: Output<ContainerGroupDnsConfigArgs>? = null, eciSecurityContext: Output<ContainerGroupEciSecurityContextArgs>? = null, eipBandwidth: Output<Int>? = null, eipInstanceId: Output<String>? = null, hostAliases: Output<List<ContainerGroupHostAliasArgs>>? = null, imageRegistryCredentials: Output<List<ContainerGroupImageRegistryCredentialArgs>>? = null, initContainers: Output<List<ContainerGroupInitContainerArgs>>? = null, insecureRegistry: Output<String>? = null, instanceType: Output<String>? = null, memory: Output<Double>? = null, plainHttpRegistry: Output<String>? = null, ramRoleName: Output<String>? = null, resourceGroupId: Output<String>? = null, restartPolicy: Output<String>? = null, securityGroupId: Output<String>? = null, tags: Output<Map<String, Any>>? = null, volumes: Output<List<ContainerGroupVolumeArgs>>? = null, vswitchId: Output<String>? = null, zoneId: Output<String>? = null)
Functions
Properties
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
The ID of the VSwitch. Currently, container groups can only be deployed in VPC networks. The number of IP addresses in the VSwitch CIDR block determines the maximum number of container groups that can be created in the VSwitch. Before you can create an ECI instance, plan the CIDR block of the VSwitch.