ContainerGroupArgs

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 dnsPolicy: Output<String>? = 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 securityContext: Output<ContainerGroupSecurityContextArgs>? = null, val securityGroupId: Output<String>? = null, val spotPriceLimit: Output<Double>? = null, val spotStrategy: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val terminationGracePeriodSeconds: Output<Int>? = 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 since v1.111.0.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "tf-example";
const _default = alicloud.eci.getZones({});
const defaultNetwork = new alicloud.vpc.Network("default", {
vpcName: name,
cidrBlock: "10.0.0.0/8",
});
const defaultSwitch = new alicloud.vpc.Switch("default", {
vswitchName: name,
cidrBlock: "10.1.0.0/16",
vpcId: defaultNetwork.id,
zoneId: _default.then(_default => _default.zones?.[0]?&#46;zoneIds?&#46;[0]),
});
const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("default", {
name: name,
vpcId: defaultNetwork.id,
});
const defaultContainerGroup = new alicloud.eci.ContainerGroup("default", {
containerGroupName: name,
cpu: 8,
memory: 16,
restartPolicy: "OnFailure",
securityGroupId: defaultSecurityGroup.id,
vswitchId: defaultSwitch.id,
autoCreateEip: true,
tags: {
Created: "TF",
For: "example",
},
containers: [{
image: "registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine",
name: "nginx",
workingDir: "/tmp/nginx",
imagePullPolicy: "IfNotPresent",
commands: [
"/bin/sh",
"-c",
"sleep 9999",
],
volumeMounts: [{
mountPath: "/tmp/example",
readOnly: false,
name: "empty1",
}],
ports: [{
port: 80,
protocol: "TCP",
}],
environmentVars: [{
key: "name",
value: "nginx",
}],
livenessProbes: [{
periodSeconds: 5,
initialDelaySeconds: 5,
successThreshold: 1,
failureThreshold: 3,
timeoutSeconds: 1,
execs: [{
commands: ["cat /tmp/healthy"],
}],
}],
readinessProbes: [{
periodSeconds: 5,
initialDelaySeconds: 5,
successThreshold: 1,
failureThreshold: 3,
timeoutSeconds: 1,
execs: [{
commands: ["cat /tmp/healthy"],
}],
}],
}],
initContainers: [{
name: "init-busybox",
image: "registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30",
imagePullPolicy: "IfNotPresent",
commands: ["echo"],
args: ["hello initcontainer"],
}],
volumes: [
{
name: "empty1",
type: "EmptyDirVolume",
},
{
name: "empty2",
type: "EmptyDirVolume",
},
],
});
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "tf-example"
default = alicloud.eci.get_zones()
default_network = alicloud.vpc.Network("default",
vpc_name=name,
cidr_block="10.0.0.0/8")
default_switch = alicloud.vpc.Switch("default",
vswitch_name=name,
cidr_block="10.1.0.0/16",
vpc_id=default_network.id,
zone_id=default.zones[0]&#46;zone_ids[0])
default_security_group = alicloud.ecs.SecurityGroup("default",
name=name,
vpc_id=default_network.id)
default_container_group = alicloud.eci.ContainerGroup("default",
container_group_name=name,
cpu=8,
memory=16,
restart_policy="OnFailure",
security_group_id=default_security_group.id,
vswitch_id=default_switch.id,
auto_create_eip=True,
tags={
"Created": "TF",
"For": "example",
},
containers=[{
"image": "registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine",
"name": "nginx",
"working_dir": "/tmp/nginx",
"image_pull_policy": "IfNotPresent",
"commands": [
"/bin/sh",
"-c",
"sleep 9999",
],
"volume_mounts": [{
"mount_path": "/tmp/example",
"read_only": False,
"name": "empty1",
}],
"ports": [{
"port": 80,
"protocol": "TCP",
}],
"environment_vars": [{
"key": "name",
"value": "nginx",
}],
"liveness_probes": [{
"period_seconds": 5,
"initial_delay_seconds": 5,
"success_threshold": 1,
"failure_threshold": 3,
"timeout_seconds": 1,
"execs": [{
"commands": ["cat /tmp/healthy"],
}],
}],
"readiness_probes": [{
"period_seconds": 5,
"initial_delay_seconds": 5,
"success_threshold": 1,
"failure_threshold": 3,
"timeout_seconds": 1,
"execs": [{
"commands": ["cat /tmp/healthy"],
}],
}],
}],
init_containers=[{
"name": "init-busybox",
"image": "registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30",
"image_pull_policy": "IfNotPresent",
"commands": ["echo"],
"args": ["hello initcontainer"],
}],
volumes=[
{
"name": "empty1",
"type": "EmptyDirVolume",
},
{
"name": "empty2",
"type": "EmptyDirVolume",
},
])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "tf-example";
var @default = AliCloud.Eci.GetZones.Invoke();
var defaultNetwork = new AliCloud.Vpc.Network("default", new()
{
VpcName = name,
CidrBlock = "10.0.0.0/8",
});
var defaultSwitch = new AliCloud.Vpc.Switch("default", new()
{
VswitchName = name,
CidrBlock = "10.1.0.0/16",
VpcId = defaultNetwork.Id,
ZoneId = @default.Apply(@default => @default.Apply(getZonesResult => getZonesResult.Zones[0]?&#46;ZoneIds[0])),
});
var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("default", new()
{
Name = name,
VpcId = defaultNetwork.Id,
});
var defaultContainerGroup = new AliCloud.Eci.ContainerGroup("default", new()
{
ContainerGroupName = name,
Cpu = 8,
Memory = 16,
RestartPolicy = "OnFailure",
SecurityGroupId = defaultSecurityGroup.Id,
VswitchId = defaultSwitch.Id,
AutoCreateEip = true,
Tags =
{
{ "Created", "TF" },
{ "For", "example" },
},
Containers = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerArgs
{
Image = "registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine",
Name = "nginx",
WorkingDir = "/tmp/nginx",
ImagePullPolicy = "IfNotPresent",
Commands = new[]
{
"/bin/sh",
"-c",
"sleep 9999",
},
VolumeMounts = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerVolumeMountArgs
{
MountPath = "/tmp/example",
ReadOnly = false,
Name = "empty1",
},
},
Ports = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerPortArgs
{
Port = 80,
Protocol = "TCP",
},
},
EnvironmentVars = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerEnvironmentVarArgs
{
Key = "name",
Value = "nginx",
},
},
LivenessProbes = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerLivenessProbeArgs
{
PeriodSeconds = 5,
InitialDelaySeconds = 5,
SuccessThreshold = 1,
FailureThreshold = 3,
TimeoutSeconds = 1,
Execs = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerLivenessProbeExecArgs
{
Commands = new[]
{
"cat /tmp/healthy",
},
},
},
},
},
ReadinessProbes = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerReadinessProbeArgs
{
PeriodSeconds = 5,
InitialDelaySeconds = 5,
SuccessThreshold = 1,
FailureThreshold = 3,
TimeoutSeconds = 1,
Execs = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupContainerReadinessProbeExecArgs
{
Commands = new[]
{
"cat /tmp/healthy",
},
},
},
},
},
},
},
InitContainers = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupInitContainerArgs
{
Name = "init-busybox",
Image = "registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30",
ImagePullPolicy = "IfNotPresent",
Commands = new[]
{
"echo",
},
Args = new[]
{
"hello initcontainer",
},
},
},
Volumes = new[]
{
new AliCloud.Eci.Inputs.ContainerGroupVolumeArgs
{
Name = "empty1",
Type = "EmptyDirVolume",
},
new AliCloud.Eci.Inputs.ContainerGroupVolumeArgs
{
Name = "empty2",
Type = "EmptyDirVolume",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eci"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
name := "tf-example"
if param := cfg.Get("name"); param != "" {
name = param
}
_default, err := eci.GetZones(ctx, &eci.GetZonesArgs{}, nil)
if err != nil {
return err
}
defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
VpcName: pulumi.String(name),
CidrBlock: pulumi.String("10.0.0.0/8"),
})
if err != nil {
return err
}
defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
VswitchName: pulumi.String(name),
CidrBlock: pulumi.String("10.1.0.0/16"),
VpcId: defaultNetwork.ID(),
ZoneId: pulumi.String(_default.Zones[0]&#46;ZoneIds[0]),
})
if err != nil {
return err
}
defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
Name: pulumi.String(name),
VpcId: defaultNetwork.ID(),
})
if err != nil {
return err
}
_, err = eci.NewContainerGroup(ctx, "default", &eci.ContainerGroupArgs{
ContainerGroupName: pulumi.String(name),
Cpu: pulumi.Float64(8),
Memory: pulumi.Float64(16),
RestartPolicy: pulumi.String("OnFailure"),
SecurityGroupId: defaultSecurityGroup.ID(),
VswitchId: defaultSwitch.ID(),
AutoCreateEip: pulumi.Bool(true),
Tags: pulumi.StringMap{
"Created": pulumi.String("TF"),
"For": pulumi.String("example"),
},
Containers: eci.ContainerGroupContainerArray{
&eci.ContainerGroupContainerArgs{
Image: pulumi.String("registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine"),
Name: pulumi.String("nginx"),
WorkingDir: pulumi.String("/tmp/nginx"),
ImagePullPolicy: pulumi.String("IfNotPresent"),
Commands: pulumi.StringArray{
pulumi.String("/bin/sh"),
pulumi.String("-c"),
pulumi.String("sleep 9999"),
},
VolumeMounts: eci.ContainerGroupContainerVolumeMountArray{
&eci.ContainerGroupContainerVolumeMountArgs{
MountPath: pulumi.String("/tmp/example"),
ReadOnly: pulumi.Bool(false),
Name: pulumi.String("empty1"),
},
},
Ports: eci.ContainerGroupContainerPortArray{
&eci.ContainerGroupContainerPortArgs{
Port: pulumi.Int(80),
Protocol: pulumi.String("TCP"),
},
},
EnvironmentVars: eci.ContainerGroupContainerEnvironmentVarArray{
&eci.ContainerGroupContainerEnvironmentVarArgs{
Key: pulumi.String("name"),
Value: pulumi.String("nginx"),
},
},
LivenessProbes: eci.ContainerGroupContainerLivenessProbeArray{
&eci.ContainerGroupContainerLivenessProbeArgs{
PeriodSeconds: pulumi.Int(5),
InitialDelaySeconds: pulumi.Int(5),
SuccessThreshold: pulumi.Int(1),
FailureThreshold: pulumi.Int(3),
TimeoutSeconds: pulumi.Int(1),
Execs: eci.ContainerGroupContainerLivenessProbeExecArray{
&eci.ContainerGroupContainerLivenessProbeExecArgs{
Commands: pulumi.StringArray{
pulumi.String("cat /tmp/healthy"),
},
},
},
},
},
ReadinessProbes: eci.ContainerGroupContainerReadinessProbeArray{
&eci.ContainerGroupContainerReadinessProbeArgs{
PeriodSeconds: pulumi.Int(5),
InitialDelaySeconds: pulumi.Int(5),
SuccessThreshold: pulumi.Int(1),
FailureThreshold: pulumi.Int(3),
TimeoutSeconds: pulumi.Int(1),
Execs: eci.ContainerGroupContainerReadinessProbeExecArray{
&eci.ContainerGroupContainerReadinessProbeExecArgs{
Commands: pulumi.StringArray{
pulumi.String("cat /tmp/healthy"),
},
},
},
},
},
},
},
InitContainers: eci.ContainerGroupInitContainerArray{
&eci.ContainerGroupInitContainerArgs{
Name: pulumi.String("init-busybox"),
Image: pulumi.String("registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30"),
ImagePullPolicy: pulumi.String("IfNotPresent"),
Commands: pulumi.StringArray{
pulumi.String("echo"),
},
Args: pulumi.StringArray{
pulumi.String("hello initcontainer"),
},
},
},
Volumes: eci.ContainerGroupVolumeArray{
&eci.ContainerGroupVolumeArgs{
Name: pulumi.String("empty1"),
Type: pulumi.String("EmptyDirVolume"),
},
&eci.ContainerGroupVolumeArgs{
Name: pulumi.String("empty2"),
Type: pulumi.String("EmptyDirVolume"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.eci.EciFunctions;
import com.pulumi.alicloud.eci.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
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) {
final var config = ctx.config();
final var name = config.get("name").orElse("tf-example");
final var default = EciFunctions.getZones();
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("10.0.0.0/8")
.build());
var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
.vswitchName(name)
.cidrBlock("10.1.0.0/16")
.vpcId(defaultNetwork.id())
.zoneId(default_.zones()[0]&#46;zoneIds()[0])
.build());
var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()
.name(name)
.vpcId(defaultNetwork.id())
.build());
var defaultContainerGroup = new ContainerGroup("defaultContainerGroup", ContainerGroupArgs.builder()
.containerGroupName(name)
.cpu(8)
.memory(16)
.restartPolicy("OnFailure")
.securityGroupId(defaultSecurityGroup.id())
.vswitchId(defaultSwitch.id())
.autoCreateEip(true)
.tags(Map.ofEntries(
Map.entry("Created", "TF"),
Map.entry("For", "example")
))
.containers(ContainerGroupContainerArgs.builder()
.image("registry.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/example")
.readOnly(false)
.name("empty1")
.build())
.ports(ContainerGroupContainerPortArgs.builder()
.port(80)
.protocol("TCP")
.build())
.environmentVars(ContainerGroupContainerEnvironmentVarArgs.builder()
.key("name")
.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())
.initContainers(ContainerGroupInitContainerArgs.builder()
.name("init-busybox")
.image("registry.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());
}
}
configuration:
name:
type: string
default: tf-example
resources:
defaultNetwork:
type: alicloud:vpc:Network
name: default
properties:
vpcName: ${name}
cidrBlock: 10.0.0.0/8
defaultSwitch:
type: alicloud:vpc:Switch
name: default
properties:
vswitchName: ${name}
cidrBlock: 10.1.0.0/16
vpcId: ${defaultNetwork.id}
zoneId: ${default.zones[0]&#46;zoneIds[0]}
defaultSecurityGroup:
type: alicloud:ecs:SecurityGroup
name: default
properties:
name: ${name}
vpcId: ${defaultNetwork.id}
defaultContainerGroup:
type: alicloud:eci:ContainerGroup
name: default
properties:
containerGroupName: ${name}
cpu: 8
memory: 16
restartPolicy: OnFailure
securityGroupId: ${defaultSecurityGroup.id}
vswitchId: ${defaultSwitch.id}
autoCreateEip: true
tags:
Created: TF
For: example
containers:
- image: registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine
name: nginx
workingDir: /tmp/nginx
imagePullPolicy: IfNotPresent
commands:
- /bin/sh
- -c
- sleep 9999
volumeMounts:
- mountPath: /tmp/example
readOnly: false
name: empty1
ports:
- port: 80
protocol: TCP
environmentVars:
- key: name
value: nginx
livenessProbes:
- periodSeconds: '5'
initialDelaySeconds: '5'
successThreshold: '1'
failureThreshold: '3'
timeoutSeconds: '1'
execs:
- commands:
- cat /tmp/healthy
readinessProbes:
- periodSeconds: '5'
initialDelaySeconds: '5'
successThreshold: '1'
failureThreshold: '3'
timeoutSeconds: '1'
execs:
- commands:
- cat /tmp/healthy
initContainers:
- name: init-busybox
image: registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30
imagePullPolicy: IfNotPresent
commands:
- echo
args:
- hello initcontainer
volumes:
- name: empty1
type: EmptyDirVolume
- name: empty2
type: EmptyDirVolume
variables:
default:
fn::invoke:
function: alicloud:eci:getZones
arguments: {}

Import

ECI Container Group can be imported using the id, e.g.

$ pulumi import alicloud:eci/containerGroup:ContainerGroup example <container_group_id>

Constructors

Link copied to clipboard
constructor(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, dnsPolicy: Output<String>? = 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, securityContext: Output<ContainerGroupSecurityContextArgs>? = null, securityGroupId: Output<String>? = null, spotPriceLimit: Output<Double>? = null, spotStrategy: Output<String>? = null, tags: Output<Map<String, String>>? = null, terminationGracePeriodSeconds: Output<Int>? = null, volumes: Output<List<ContainerGroupVolumeArgs>>? = null, vswitchId: Output<String>? = null, zoneId: Output<String>? = null)

Properties

Link copied to clipboard

The ACR enterprise edition example properties. See acr_registry_info below.

Link copied to clipboard
val autoCreateEip: Output<Boolean>? = null

Specifies whether to automatically create an EIP and bind the EIP to the elastic container instance.

Link copied to clipboard
val autoMatchImageCache: Output<Boolean>? = null

Specifies whether to automatically match the image cache. Default value: false. Valid values: true and false.

Link copied to clipboard
val containerGroupName: Output<String>? = null

The name of the container group.

Link copied to clipboard

The list of containers. See containers below.

Link copied to clipboard
val cpu: Output<Double>? = null

The amount of CPU resources allocated to the container group.

Link copied to clipboard

The structure of dnsConfig. See dns_config below.

Link copied to clipboard
val dnsPolicy: Output<String>? = null

The policy of DNS. Default value: Default. Valid values: Default and None.

Link copied to clipboard
val eipBandwidth: Output<Int>? = null

The bandwidth of the EIP. Default value: 5.

Link copied to clipboard
val eipInstanceId: Output<String>? = null

The ID of the elastic IP address (EIP).

Link copied to clipboard

HostAliases. See host_aliases below.

Link copied to clipboard

The image registry credential. See image_registry_credential below.

Link copied to clipboard

The list of initContainers. See init_containers below.

Link copied to clipboard
val insecureRegistry: Output<String>? = null

The address of the self-built mirror warehouse. When creating an image cache using an image in a self-built image repository with a self-signed certificate, you need to configure this parameter to skip certificate authentication to avoid image pull failure due to certificate authentication failure.

Link copied to clipboard
val instanceType: Output<String>? = null

The type of the ECS instance.

Link copied to clipboard
val memory: Output<Double>? = null

The amount of memory resources allocated to the container group.

Link copied to clipboard
val plainHttpRegistry: Output<String>? = null

The address of the self-built mirror warehouse. When creating an image cache from an image in a self-built image repository using the HTTP protocol, you need to configure this parameter so that the ECI uses the HTTP protocol to pull the image to avoid image pull failure due to different protocols.

Link copied to clipboard
val ramRoleName: Output<String>? = null

The RAM role that the container group assumes. ECI and ECS share the same RAM role.

Link copied to clipboard
val resourceGroupId: Output<String>? = null

The ID of the resource group. NOTE: From version 1.208.0, resource_group_id can be modified.

Link copied to clipboard
val restartPolicy: Output<String>? = null

The restart policy of the container group. Valid values: Always, Never, OnFailure.

Link copied to clipboard

The security context of the container group. See security_context below.

Link copied to clipboard
val securityGroupId: Output<String>? = null

The ID of the security group to which the container group belongs. Container groups within the same security group can access each other.

Link copied to clipboard
val spotPriceLimit: Output<Double>? = null

The maximum hourly price of the ECI spot instance.

Link copied to clipboard
val spotStrategy: Output<String>? = null

Filter the results by ECI spot type. Valid values: NoSpot, SpotWithPriceLimit and SpotAsPriceGo. Default to NoSpot.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A mapping of tags to assign to the resource.

Link copied to clipboard
val terminationGracePeriodSeconds: Output<Int>? = null

The buffer time during which the program handles operations before the program stops. Unit: seconds.

Link copied to clipboard
val volumes: Output<List<ContainerGroupVolumeArgs>>? = null

The list of volumes. See volumes below.

Link copied to clipboard
val vswitchId: Output<String>? = null

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. NOTE: From version 1.208.0, You can specify up to 10 vswitch_id. Separate multiple vSwitch IDs with commas (,), such as vsw-,vsw-. attribute vswitch_id updating diff will be ignored when you set multiple vSwitchIds, there is only one valid vswitch_id exists in the set vSwitchIds.

Link copied to clipboard
val zoneId: Output<String>? = null

The ID of the zone where you want to deploy the container group. If no value is specified, the system assigns a zone to the container group. By default, no value is specified.

Functions

Link copied to clipboard
open override fun toJava(): ContainerGroupArgs