pulumi/tests/testdata/codegen/docker-3.1.0.json

4947 lines
176 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"name": "docker",
"description": "A Pulumi package for interacting with Docker in Pulumi programs",
"keywords": [
"pulumi",
"docker"
],
"homepage": "https://pulumi.io",
"license": "Apache-2.0",
"attribution": "This Pulumi package is based on the [`docker` Terraform Provider](https://github.com/terraform-providers/terraform-provider-docker).",
"repository": "https://github.com/pulumi/pulumi-docker",
"meta": {
"moduleFormat": "(.*)(?:/[^/]*)"
},
"config": {
"variables": {
"caMaterial": {
"type": "string",
"description": "PEM-encoded content of Docker host CA certificate\n"
},
"certMaterial": {
"type": "string",
"description": "PEM-encoded content of Docker client certificate\n"
},
"certPath": {
"type": "string",
"description": "Path to directory with Docker TLS config\n"
},
"host": {
"type": "string",
"description": "The Docker daemon address\n",
"default": "unix:///var/run/docker.sock",
"defaultInfo": {
"environment": [
"DOCKER_HOST"
]
}
},
"keyMaterial": {
"type": "string",
"description": "PEM-encoded content of Docker client private key\n"
},
"registryAuth": {
"type": "array",
"items": {
"$ref": "#/types/docker:config/registryAuth:registryAuth"
}
}
},
"defaults": [
"host"
]
},
"types": {
"docker:config/registryAuth:registryAuth": {
"properties": {
"address": {
"type": "string"
},
"configFile": {
"type": "string"
},
"configFileContent": {
"type": "string"
},
"password": {
"type": "string"
},
"username": {
"type": "string"
}
},
"type": "object",
"required": [
"address"
],
"language": {
"nodejs": {
"requiredInputs": []
}
}
},
"docker:index/ContainerCapabilities:ContainerCapabilities": {
"properties": {
"adds": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"drops": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ContainerDevice:ContainerDevice": {
"properties": {
"containerPath": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"hostPath": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"permissions": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"hostPath"
]
},
"docker:index/ContainerHealthcheck:ContainerHealthcheck": {
"properties": {
"interval": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"retries": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"startPeriod": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"tests": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"timeout": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"tests"
]
},
"docker:index/ContainerHost:ContainerHost": {
"properties": {
"host": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"ip": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"host",
"ip"
]
},
"docker:index/ContainerLabel:ContainerLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/ContainerMount:ContainerMount": {
"properties": {
"bindOptions": {
"$ref": "#/types/docker:index/ContainerMountBindOptions:ContainerMountBindOptions",
"language": {
"python": {
"mapCase": false
}
}
},
"readOnly": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"source": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"target": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"tmpfsOptions": {
"$ref": "#/types/docker:index/ContainerMountTmpfsOptions:ContainerMountTmpfsOptions",
"language": {
"python": {
"mapCase": false
}
}
},
"type": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"volumeOptions": {
"$ref": "#/types/docker:index/ContainerMountVolumeOptions:ContainerMountVolumeOptions",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"target",
"type"
]
},
"docker:index/ContainerMountBindOptions:ContainerMountBindOptions": {
"properties": {
"propagation": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ContainerMountTmpfsOptions:ContainerMountTmpfsOptions": {
"properties": {
"mode": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"sizeBytes": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ContainerMountVolumeOptions:ContainerMountVolumeOptions": {
"properties": {
"driverName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"driverOptions": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerMountVolumeOptionsLabel:ContainerMountVolumeOptionsLabel"
},
"language": {
"python": {
"mapCase": false
}
}
},
"noCopy": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ContainerMountVolumeOptionsLabel:ContainerMountVolumeOptionsLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/ContainerNetworkData:ContainerNetworkData": {
"properties": {
"gateway": {
"type": "string",
"deprecationMessage": "Use `network_data` instead. The network gateway of the container as read from its NetworkSettings.",
"language": {
"python": {
"mapCase": false
}
}
},
"globalIpv6Address": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"globalIpv6PrefixLength": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"ipAddress": {
"type": "string",
"deprecationMessage": "Use `network_data` instead. The IP address of the container's first network it.",
"language": {
"python": {
"mapCase": false
}
}
},
"ipPrefixLength": {
"type": "integer",
"deprecationMessage": "Use `network_data` instead. The IP prefix length of the container as read from its NetworkSettings.",
"language": {
"python": {
"mapCase": false
}
}
},
"ipv6Gateway": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"networkName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"language": {
"nodejs": {
"requiredOutputs": [
"gateway",
"globalIpv6Address",
"globalIpv6PrefixLength",
"ipAddress",
"ipPrefixLength",
"ipv6Gateway",
"networkName"
]
}
}
},
"docker:index/ContainerNetworksAdvanced:ContainerNetworksAdvanced": {
"properties": {
"aliases": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"ipv4Address": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"ipv6Address": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"name": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"name"
]
},
"docker:index/ContainerPort:ContainerPort": {
"properties": {
"external": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"internal": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"ip": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"protocol": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"internal"
],
"language": {
"nodejs": {
"requiredOutputs": [
"external",
"internal"
]
}
}
},
"docker:index/ContainerUlimit:ContainerUlimit": {
"properties": {
"hard": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"name": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"soft": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"hard",
"name",
"soft"
]
},
"docker:index/ContainerUpload:ContainerUpload": {
"properties": {
"content": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"contentBase64": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"executable": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"file": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"source": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"sourceHash": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"file"
]
},
"docker:index/ContainerVolume:ContainerVolume": {
"properties": {
"containerPath": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"fromContainer": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"hostPath": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"readOnly": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"volumeName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/NetworkIpamConfig:NetworkIpamConfig": {
"properties": {
"auxAddress": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"language": {
"python": {
"mapCase": false
}
}
},
"gateway": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"ipRange": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"subnet": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/NetworkLabel:NetworkLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/PluginGrantPermission:PluginGrantPermission": {
"properties": {
"name": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"name",
"values"
]
},
"docker:index/ProviderRegistryAuth:ProviderRegistryAuth": {
"properties": {
"address": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"configFile": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"configFileContent": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"password": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"username": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"address"
],
"language": {
"nodejs": {
"requiredOutputs": []
}
}
},
"docker:index/RegistryImageBuild:RegistryImageBuild": {
"properties": {
"authConfigs": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/RegistryImageBuildAuthConfig:RegistryImageBuildAuthConfig"
},
"language": {
"python": {
"mapCase": false
}
}
},
"buildArgs": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"buildId": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"cacheFroms": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"cgroupParent": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"context": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"cpuPeriod": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"cpuQuota": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"cpuSetCpus": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"cpuSetMems": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"cpuShares": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"dockerfile": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"extraHosts": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"forceRemove": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"isolation": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"labels": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"memory": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"memorySwap": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"networkMode": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"noCache": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"platform": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"pullParent": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"remoteContext": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"remove": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"securityOpts": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"sessionId": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"shmSize": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"squash": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"suppressOutput": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"target": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"ulimits": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/RegistryImageBuildUlimit:RegistryImageBuildUlimit"
},
"language": {
"python": {
"mapCase": false
}
}
},
"version": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"context"
]
},
"docker:index/RegistryImageBuildAuthConfig:RegistryImageBuildAuthConfig": {
"properties": {
"auth": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"email": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"hostName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"identityToken": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"password": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"registryToken": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"serverAddress": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"userName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"hostName"
]
},
"docker:index/RegistryImageBuildUlimit:RegistryImageBuildUlimit": {
"properties": {
"hard": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"name": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"soft": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"hard",
"name",
"soft"
]
},
"docker:index/RemoteImageBuild:RemoteImageBuild": {
"properties": {
"buildArg": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"dockerfile": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"forceRemove": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"label": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"noCache": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"path": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"remove": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"target": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"path"
]
},
"docker:index/SecretLabel:SecretLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/ServiceAuth:ServiceAuth": {
"properties": {
"password": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"serverAddress": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"username": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"serverAddress"
]
},
"docker:index/ServiceConvergeConfig:ServiceConvergeConfig": {
"properties": {
"delay": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"timeout": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceEndpointSpec:ServiceEndpointSpec": {
"properties": {
"mode": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"ports": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceEndpointSpecPort:ServiceEndpointSpecPort"
},
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"language": {
"nodejs": {
"requiredOutputs": [
"mode"
]
}
}
},
"docker:index/ServiceEndpointSpecPort:ServiceEndpointSpecPort": {
"properties": {
"name": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"protocol": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"publishMode": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"publishedPort": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"targetPort": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"targetPort"
],
"language": {
"nodejs": {
"requiredOutputs": [
"publishedPort",
"targetPort"
]
}
}
},
"docker:index/ServiceLabel:ServiceLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/ServiceMode:ServiceMode": {
"properties": {
"global": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"replicated": {
"$ref": "#/types/docker:index/ServiceModeReplicated:ServiceModeReplicated",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"language": {
"nodejs": {
"requiredOutputs": [
"replicated"
]
}
}
},
"docker:index/ServiceModeReplicated:ServiceModeReplicated": {
"properties": {
"replicas": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceRollbackConfig:ServiceRollbackConfig": {
"properties": {
"delay": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"failureAction": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"maxFailureRatio": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"monitor": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"order": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"parallelism": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpec:ServiceTaskSpec": {
"properties": {
"containerSpec": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpec:ServiceTaskSpecContainerSpec",
"language": {
"python": {
"mapCase": false
}
}
},
"forceUpdate": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"logDriver": {
"$ref": "#/types/docker:index/ServiceTaskSpecLogDriver:ServiceTaskSpecLogDriver",
"language": {
"python": {
"mapCase": false
}
}
},
"networks": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"placement": {
"$ref": "#/types/docker:index/ServiceTaskSpecPlacement:ServiceTaskSpecPlacement",
"language": {
"python": {
"mapCase": false
}
}
},
"resources": {
"$ref": "#/types/docker:index/ServiceTaskSpecResources:ServiceTaskSpecResources",
"language": {
"python": {
"mapCase": false
}
}
},
"restartPolicy": {
"$ref": "#/types/docker:index/ServiceTaskSpecRestartPolicy:ServiceTaskSpecRestartPolicy",
"language": {
"python": {
"mapCase": false
}
}
},
"runtime": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"containerSpec"
],
"language": {
"nodejs": {
"requiredOutputs": [
"containerSpec",
"forceUpdate",
"placement",
"resources",
"restartPolicy",
"runtime"
]
}
}
},
"docker:index/ServiceTaskSpecContainerSpec:ServiceTaskSpecContainerSpec": {
"properties": {
"args": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"commands": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"configs": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecConfig:ServiceTaskSpecContainerSpecConfig"
},
"language": {
"python": {
"mapCase": false
}
}
},
"dir": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"dnsConfig": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecDnsConfig:ServiceTaskSpecContainerSpecDnsConfig",
"language": {
"python": {
"mapCase": false
}
}
},
"env": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"groups": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"healthcheck": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecHealthcheck:ServiceTaskSpecContainerSpecHealthcheck",
"language": {
"python": {
"mapCase": false
}
}
},
"hostname": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"hosts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecHost:ServiceTaskSpecContainerSpecHost"
},
"language": {
"python": {
"mapCase": false
}
}
},
"image": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"isolation": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecLabel:ServiceTaskSpecContainerSpecLabel"
},
"language": {
"python": {
"mapCase": false
}
}
},
"mounts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecMount:ServiceTaskSpecContainerSpecMount"
},
"language": {
"python": {
"mapCase": false
}
}
},
"privileges": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecPrivileges:ServiceTaskSpecContainerSpecPrivileges",
"language": {
"python": {
"mapCase": false
}
}
},
"readOnly": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"secrets": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecSecret:ServiceTaskSpecContainerSpecSecret"
},
"language": {
"python": {
"mapCase": false
}
}
},
"stopGracePeriod": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"stopSignal": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"user": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"image"
],
"language": {
"nodejs": {
"requiredOutputs": [
"dnsConfig",
"healthcheck",
"image",
"stopGracePeriod"
]
}
}
},
"docker:index/ServiceTaskSpecContainerSpecConfig:ServiceTaskSpecContainerSpecConfig": {
"properties": {
"configId": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"configName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"fileGid": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"fileMode": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"fileName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"fileUid": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"configId",
"fileName"
]
},
"docker:index/ServiceTaskSpecContainerSpecDnsConfig:ServiceTaskSpecContainerSpecDnsConfig": {
"properties": {
"nameservers": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"options": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"searches": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"nameservers"
]
},
"docker:index/ServiceTaskSpecContainerSpecHealthcheck:ServiceTaskSpecContainerSpecHealthcheck": {
"properties": {
"interval": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"retries": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"startPeriod": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"tests": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"timeout": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"tests"
]
},
"docker:index/ServiceTaskSpecContainerSpecHost:ServiceTaskSpecContainerSpecHost": {
"properties": {
"host": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"ip": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"host",
"ip"
]
},
"docker:index/ServiceTaskSpecContainerSpecLabel:ServiceTaskSpecContainerSpecLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/ServiceTaskSpecContainerSpecMount:ServiceTaskSpecContainerSpecMount": {
"properties": {
"bindOptions": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecMountBindOptions:ServiceTaskSpecContainerSpecMountBindOptions",
"language": {
"python": {
"mapCase": false
}
}
},
"readOnly": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"source": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"target": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"tmpfsOptions": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecMountTmpfsOptions:ServiceTaskSpecContainerSpecMountTmpfsOptions",
"language": {
"python": {
"mapCase": false
}
}
},
"type": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"volumeOptions": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecMountVolumeOptions:ServiceTaskSpecContainerSpecMountVolumeOptions",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"target",
"type"
]
},
"docker:index/ServiceTaskSpecContainerSpecMountBindOptions:ServiceTaskSpecContainerSpecMountBindOptions": {
"properties": {
"propagation": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecContainerSpecMountTmpfsOptions:ServiceTaskSpecContainerSpecMountTmpfsOptions": {
"properties": {
"mode": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"sizeBytes": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecContainerSpecMountVolumeOptions:ServiceTaskSpecContainerSpecMountVolumeOptions": {
"properties": {
"driverName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"driverOptions": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecMountVolumeOptionsLabel:ServiceTaskSpecContainerSpecMountVolumeOptionsLabel"
},
"language": {
"python": {
"mapCase": false
}
}
},
"noCopy": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecContainerSpecMountVolumeOptionsLabel:ServiceTaskSpecContainerSpecMountVolumeOptionsLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/ServiceTaskSpecContainerSpecPrivileges:ServiceTaskSpecContainerSpecPrivileges": {
"properties": {
"credentialSpec": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecPrivilegesCredentialSpec:ServiceTaskSpecContainerSpecPrivilegesCredentialSpec",
"language": {
"python": {
"mapCase": false
}
}
},
"seLinuxContext": {
"$ref": "#/types/docker:index/ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext:ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecContainerSpecPrivilegesCredentialSpec:ServiceTaskSpecContainerSpecPrivilegesCredentialSpec": {
"properties": {
"file": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"registry": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext:ServiceTaskSpecContainerSpecPrivilegesSeLinuxContext": {
"properties": {
"disable": {
"type": "boolean",
"language": {
"python": {
"mapCase": false
}
}
},
"level": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"role": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"type": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"user": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecContainerSpecSecret:ServiceTaskSpecContainerSpecSecret": {
"properties": {
"fileGid": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"fileMode": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"fileName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"fileUid": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"secretId": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"secretName": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"fileName",
"secretId"
]
},
"docker:index/ServiceTaskSpecLogDriver:ServiceTaskSpecLogDriver": {
"properties": {
"name": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"options": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"name"
]
},
"docker:index/ServiceTaskSpecPlacement:ServiceTaskSpecPlacement": {
"properties": {
"constraints": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"maxReplicas": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"platforms": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceTaskSpecPlacementPlatform:ServiceTaskSpecPlacementPlatform"
},
"language": {
"python": {
"mapCase": false
}
}
},
"prefs": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecPlacementPlatform:ServiceTaskSpecPlacementPlatform": {
"properties": {
"architecture": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"os": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"architecture",
"os"
]
},
"docker:index/ServiceTaskSpecResources:ServiceTaskSpecResources": {
"properties": {
"limits": {
"$ref": "#/types/docker:index/ServiceTaskSpecResourcesLimits:ServiceTaskSpecResourcesLimits",
"language": {
"python": {
"mapCase": false
}
}
},
"reservation": {
"$ref": "#/types/docker:index/ServiceTaskSpecResourcesReservation:ServiceTaskSpecResourcesReservation",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecResourcesLimits:ServiceTaskSpecResourcesLimits": {
"properties": {
"memoryBytes": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"nanoCpus": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecResourcesReservation:ServiceTaskSpecResourcesReservation": {
"properties": {
"genericResources": {
"$ref": "#/types/docker:index/ServiceTaskSpecResourcesReservationGenericResources:ServiceTaskSpecResourcesReservationGenericResources",
"language": {
"python": {
"mapCase": false
}
}
},
"memoryBytes": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"nanoCpus": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecResourcesReservationGenericResources:ServiceTaskSpecResourcesReservationGenericResources": {
"properties": {
"discreteResourcesSpecs": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
},
"namedResourcesSpecs": {
"type": "array",
"items": {
"type": "string"
},
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceTaskSpecRestartPolicy:ServiceTaskSpecRestartPolicy": {
"properties": {
"condition": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"delay": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"maxAttempts": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
},
"window": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/ServiceUpdateConfig:ServiceUpdateConfig": {
"properties": {
"delay": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"failureAction": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"maxFailureRatio": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"monitor": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"order": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"parallelism": {
"type": "integer",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
},
"docker:index/VolumeLabel:VolumeLabel": {
"properties": {
"label": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"value": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object",
"required": [
"label",
"value"
]
},
"docker:index/getNetworkIpamConfig:getNetworkIpamConfig": {
"properties": {
"auxAddress": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"language": {
"python": {
"mapCase": false
}
}
},
"gateway": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"ipRange": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
},
"subnet": {
"type": "string",
"language": {
"python": {
"mapCase": false
}
}
}
},
"type": "object"
}
},
"provider": {
"description": "The provider type for the docker package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n",
"inputProperties": {
"caMaterial": {
"type": "string",
"description": "PEM-encoded content of Docker host CA certificate\n"
},
"certMaterial": {
"type": "string",
"description": "PEM-encoded content of Docker client certificate\n"
},
"certPath": {
"type": "string",
"description": "Path to directory with Docker TLS config\n"
},
"host": {
"type": "string",
"description": "The Docker daemon address\n",
"default": "unix:///var/run/docker.sock",
"defaultInfo": {
"environment": [
"DOCKER_HOST"
]
}
},
"keyMaterial": {
"type": "string",
"description": "PEM-encoded content of Docker client private key\n"
},
"registryAuth": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ProviderRegistryAuth:ProviderRegistryAuth"
}
}
}
},
"resources": {
"docker:index/container:Container": {
"description": "\n\n\n## Import\n\n### Example Assuming you created a `container` as follows #!/bin/bash docker run --name foo -p8080:80 -d nginx\n\n# prints the container ID\n\n9a550c0f0163d39d77222d3efd58701b625d47676c25c686c95b5b92d1cba6fd you provide the definition for the resource as follows terraform resource \"docker_container\" \"foo\" {\n\n name\n\n= \"foo\"\n\n image = \"nginx\"\n\n ports {\n\n\n\n internal = \"80\"\n\n\n\n external = \"8080\"\n\n } } then the import command is as follows #!/bin/bash\n\n```sh\n $ pulumi import docker:index/container:Container foo 9a550c0f0163d39d77222d3efd58701b625d47676c25c686c95b5b92d1cba6fd\n```\n\n ",
"properties": {
"attach": {
"type": "boolean",
"description": "If `true` attach to the container after its creation and waits the end of its execution. Defaults to `false`.\n"
},
"bridge": {
"type": "string",
"description": "The network bridge of the container as read from its NetworkSettings.\n"
},
"capabilities": {
"$ref": "#/types/docker:index/ContainerCapabilities:ContainerCapabilities",
"description": "Add or drop certrain linux capabilities.\n"
},
"command": {
"type": "array",
"items": {
"type": "string"
},
"description": "The command to use to start the container. For example, to run `/usr/bin/myprogram -f baz.conf` set the command to be\n`[\"/usr/bin/myprogram\",\"-\",\"baz.con\"]`.\n"
},
"containerLogs": {
"type": "string",
"description": "The logs of the container if its execution is done (`attach` must be disabled).\n"
},
"cpuSet": {
"type": "string",
"description": "A comma-separated list or hyphen-separated range of CPUs a container can use, e.g. `0-1`.\n"
},
"cpuShares": {
"type": "integer",
"description": "CPU shares (relative weight) for the container.\n"
},
"destroyGraceSeconds": {
"type": "integer",
"description": "If defined will attempt to stop the container before destroying. Container will be destroyed after `n` seconds or on\nsuccessful stop.\n"
},
"devices": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerDevice:ContainerDevice"
},
"description": "Bind devices to the container.\n"
},
"dns": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS servers to use.\n"
},
"dnsOpts": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS options used by the DNS provider(s), see `resolv.conf` documentation for valid list of options.\n"
},
"dnsSearches": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS search domains that are used when bare unqualified hostnames are used inside of the container.\n"
},
"domainname": {
"type": "string",
"description": "Domain name of the container.\n"
},
"entrypoints": {
"type": "array",
"items": {
"type": "string"
},
"description": "The command to use as the Entrypoint for the container. The Entrypoint allows you to configure a container to run as an\nexecutable. For example, to run `/usr/bin/myprogram` when starting a container, set the entrypoint to be\n`\"/usr/bin/myprogra\"]`.\n"
},
"envs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Environment variables to set in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n"
},
"exitCode": {
"type": "integer",
"description": "The exit code of the container if its execution is done (`must_run` must be disabled).\n"
},
"gateway": {
"type": "string",
"description": "The network gateway of the container.\n",
"deprecationMessage": "Use `network_data` instead. The network gateway of the container as read from its NetworkSettings."
},
"groupAdds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Additional groups for the container user\n"
},
"healthcheck": {
"$ref": "#/types/docker:index/ContainerHealthcheck:ContainerHealthcheck",
"description": "A test to perform to check that the container is healthy\n"
},
"hostname": {
"type": "string",
"description": "Hostname of the container.\n"
},
"hosts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerHost:ContainerHost"
},
"description": "Additional hosts to add to the container.\n"
},
"image": {
"type": "string",
"description": "The ID of the image to back this container. The easiest way to get this value is to use the `docker_image` resource as\nis shown in the example.\n"
},
"init": {
"type": "boolean",
"description": "Configured whether an init process should be injected for this container. If unset this will default to the `dockerd`\ndefaults.\n"
},
"ipAddress": {
"type": "string",
"description": "The IP address of the container.\n",
"deprecationMessage": "Use `network_data` instead. The IP address of the container's first network it."
},
"ipPrefixLength": {
"type": "integer",
"description": "The IP prefix length of the container.\n",
"deprecationMessage": "Use `network_data` instead. The IP prefix length of the container as read from its NetworkSettings."
},
"ipcMode": {
"type": "string",
"description": "IPC sharing mode for the container. Possible values are: `none`, `private`, `shareable`, `container:<name|id>` or\n`host`.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerLabel:ContainerLabel"
},
"description": "User-defined key/value metadata\n"
},
"links": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set of links for link based connectivity between containers that are running on the same host.\n",
"deprecationMessage": "The --link flag is a legacy feature of Docker. It may eventually be removed."
},
"logDriver": {
"type": "string",
"description": "The logging driver to use for the container. Defaults to `json-file`.\n"
},
"logOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Key/value pairs to use as options for the logging driver.\n"
},
"logs": {
"type": "boolean",
"description": "Save the container logs (`attach` must be enabled). Defaults to `false`.\n"
},
"maxRetryCount": {
"type": "integer",
"description": "The maximum amount of times to an attempt a restart when `restart` is set to 'on-failure'.\n"
},
"memory": {
"type": "integer",
"description": "The memory limit for the container in MBs.\n"
},
"memorySwap": {
"type": "integer",
"description": "The total memory limit (memory + swap) for the container in MBs. This setting may compute to `-1` after `terraform\napply` if the target host doesn't support memory swap, when that is the case docker will use a soft limitation.\n"
},
"mounts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerMount:ContainerMount"
},
"description": "Specification for mounts to be added to containers created as part of the service.\n"
},
"mustRun": {
"type": "boolean",
"description": "If `true`, then the Docker container will be kept running. If `false`, then as long as the container exists, Terraform\nassumes it is successful. Defaults to `true`.\n"
},
"name": {
"type": "string",
"description": "The name of the container.\n"
},
"networkAliases": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set an alias for the container in all specified networks\n",
"deprecationMessage": "Use networks_advanced instead. Will be removed in v3.0.0"
},
"networkDatas": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerNetworkData:ContainerNetworkData"
},
"description": "The data of the networks the container is connected to.\n"
},
"networkMode": {
"type": "string",
"description": "Network mode of the container.\n"
},
"networks": {
"type": "array",
"items": {
"type": "string"
},
"description": "ID of the networks in which the container is.\n",
"deprecationMessage": "Use networks_advanced instead. Will be removed in v3.0.0"
},
"networksAdvanced": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerNetworksAdvanced:ContainerNetworksAdvanced"
},
"description": "The networks the container is attached to\n"
},
"pidMode": {
"type": "string",
"description": "he PID (Process) Namespace mode for the container. Either `container:<name|id>` or `host`.\n"
},
"ports": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerPort:ContainerPort"
},
"description": "Publish a container's port(s) to the host.\n"
},
"privileged": {
"type": "boolean",
"description": "If `true`, the container runs in privileged mode.\n"
},
"publishAllPorts": {
"type": "boolean",
"description": "Publish all ports of the container.\n"
},
"readOnly": {
"type": "boolean",
"description": "If `true`, the container will be started as readonly. Defaults to `false`.\n"
},
"removeVolumes": {
"type": "boolean",
"description": "If `true`, it will remove anonymous volumes associated with the container. Defaults to `true`.\n"
},
"restart": {
"type": "string",
"description": "The restart policy for the container. Must be one of 'no', 'on-failure', 'always', 'unless-stopped'. Defaults to `no`.\n"
},
"rm": {
"type": "boolean",
"description": "If `true`, then the container will be automatically removed after his execution. Terraform won't check this container\nafter creation. Defaults to `false`.\n"
},
"securityOpts": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of string values to customize labels for MLS systems, such as SELinux. See\nhttps://docs.docker.com/engine/reference/run/#security-configuration.\n"
},
"shmSize": {
"type": "integer",
"description": "Size of `/dev/shm` in MBs.\n"
},
"start": {
"type": "boolean",
"description": "If `true`, then the Docker container will be started after creation. If `false`, then the container is only created.\nDefaults to `true`.\n"
},
"stdinOpen": {
"type": "boolean",
"description": "If `true`, keep STDIN open even if not attached (`docker run -i`). Defaults to `false`.\n"
},
"storageOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Key/value pairs for the storage driver options, e.g. `size`: `120G`\n"
},
"sysctls": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "A map of kernel parameters (sysctls) to set in the container.\n"
},
"tmpfs": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "A map of container directories which should be replaced by `tmpfs mounts`, and their corresponding mount options.\n"
},
"tty": {
"type": "boolean",
"description": "If `true`, allocate a pseudo-tty (`docker run -t`). Defaults to `false`.\n"
},
"ulimits": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerUlimit:ContainerUlimit"
},
"description": "Ulimit options to add.\n"
},
"uploads": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerUpload:ContainerUpload"
},
"description": "Specifies files to upload to the container before starting it. Only one of `content` or `content_base64` can be set and\nat least one of them has to be set.\n"
},
"user": {
"type": "string",
"description": "User used for run the first process. Format is `user` or `user:group` which user and group can be passed literraly or by\nname.\n"
},
"usernsMode": {
"type": "string",
"description": "Sets the usernamespace mode for the container when usernamespace remapping option is enabled.\n"
},
"volumes": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerVolume:ContainerVolume"
},
"description": "Spec for mounting volumes in the container.\n"
},
"workingDir": {
"type": "string",
"description": "The working directory for commands to run in.\n"
}
},
"required": [
"bridge",
"command",
"containerLogs",
"entrypoints",
"envs",
"exitCode",
"gateway",
"healthcheck",
"hostname",
"image",
"init",
"ipAddress",
"ipPrefixLength",
"ipcMode",
"labels",
"name",
"networkDatas",
"securityOpts",
"shmSize"
],
"inputProperties": {
"attach": {
"type": "boolean",
"description": "If `true` attach to the container after its creation and waits the end of its execution. Defaults to `false`.\n"
},
"capabilities": {
"$ref": "#/types/docker:index/ContainerCapabilities:ContainerCapabilities",
"description": "Add or drop certrain linux capabilities.\n"
},
"command": {
"type": "array",
"items": {
"type": "string"
},
"description": "The command to use to start the container. For example, to run `/usr/bin/myprogram -f baz.conf` set the command to be\n`[\"/usr/bin/myprogram\",\"-\",\"baz.con\"]`.\n"
},
"cpuSet": {
"type": "string",
"description": "A comma-separated list or hyphen-separated range of CPUs a container can use, e.g. `0-1`.\n"
},
"cpuShares": {
"type": "integer",
"description": "CPU shares (relative weight) for the container.\n"
},
"destroyGraceSeconds": {
"type": "integer",
"description": "If defined will attempt to stop the container before destroying. Container will be destroyed after `n` seconds or on\nsuccessful stop.\n"
},
"devices": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerDevice:ContainerDevice"
},
"description": "Bind devices to the container.\n"
},
"dns": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS servers to use.\n"
},
"dnsOpts": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS options used by the DNS provider(s), see `resolv.conf` documentation for valid list of options.\n"
},
"dnsSearches": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS search domains that are used when bare unqualified hostnames are used inside of the container.\n"
},
"domainname": {
"type": "string",
"description": "Domain name of the container.\n"
},
"entrypoints": {
"type": "array",
"items": {
"type": "string"
},
"description": "The command to use as the Entrypoint for the container. The Entrypoint allows you to configure a container to run as an\nexecutable. For example, to run `/usr/bin/myprogram` when starting a container, set the entrypoint to be\n`\"/usr/bin/myprogra\"]`.\n"
},
"envs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Environment variables to set in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n"
},
"groupAdds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Additional groups for the container user\n"
},
"healthcheck": {
"$ref": "#/types/docker:index/ContainerHealthcheck:ContainerHealthcheck",
"description": "A test to perform to check that the container is healthy\n"
},
"hostname": {
"type": "string",
"description": "Hostname of the container.\n"
},
"hosts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerHost:ContainerHost"
},
"description": "Additional hosts to add to the container.\n"
},
"image": {
"type": "string",
"description": "The ID of the image to back this container. The easiest way to get this value is to use the `docker_image` resource as\nis shown in the example.\n"
},
"init": {
"type": "boolean",
"description": "Configured whether an init process should be injected for this container. If unset this will default to the `dockerd`\ndefaults.\n"
},
"ipcMode": {
"type": "string",
"description": "IPC sharing mode for the container. Possible values are: `none`, `private`, `shareable`, `container:<name|id>` or\n`host`.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerLabel:ContainerLabel"
},
"description": "User-defined key/value metadata\n"
},
"links": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set of links for link based connectivity between containers that are running on the same host.\n",
"deprecationMessage": "The --link flag is a legacy feature of Docker. It may eventually be removed."
},
"logDriver": {
"type": "string",
"description": "The logging driver to use for the container. Defaults to `json-file`.\n"
},
"logOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Key/value pairs to use as options for the logging driver.\n"
},
"logs": {
"type": "boolean",
"description": "Save the container logs (`attach` must be enabled). Defaults to `false`.\n"
},
"maxRetryCount": {
"type": "integer",
"description": "The maximum amount of times to an attempt a restart when `restart` is set to 'on-failure'.\n"
},
"memory": {
"type": "integer",
"description": "The memory limit for the container in MBs.\n"
},
"memorySwap": {
"type": "integer",
"description": "The total memory limit (memory + swap) for the container in MBs. This setting may compute to `-1` after `terraform\napply` if the target host doesn't support memory swap, when that is the case docker will use a soft limitation.\n"
},
"mounts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerMount:ContainerMount"
},
"description": "Specification for mounts to be added to containers created as part of the service.\n"
},
"mustRun": {
"type": "boolean",
"description": "If `true`, then the Docker container will be kept running. If `false`, then as long as the container exists, Terraform\nassumes it is successful. Defaults to `true`.\n"
},
"name": {
"type": "string",
"description": "The name of the container.\n"
},
"networkAliases": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set an alias for the container in all specified networks\n",
"deprecationMessage": "Use networks_advanced instead. Will be removed in v3.0.0"
},
"networkMode": {
"type": "string",
"description": "Network mode of the container.\n"
},
"networks": {
"type": "array",
"items": {
"type": "string"
},
"description": "ID of the networks in which the container is.\n",
"deprecationMessage": "Use networks_advanced instead. Will be removed in v3.0.0"
},
"networksAdvanced": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerNetworksAdvanced:ContainerNetworksAdvanced"
},
"description": "The networks the container is attached to\n"
},
"pidMode": {
"type": "string",
"description": "he PID (Process) Namespace mode for the container. Either `container:<name|id>` or `host`.\n"
},
"ports": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerPort:ContainerPort"
},
"description": "Publish a container's port(s) to the host.\n"
},
"privileged": {
"type": "boolean",
"description": "If `true`, the container runs in privileged mode.\n"
},
"publishAllPorts": {
"type": "boolean",
"description": "Publish all ports of the container.\n"
},
"readOnly": {
"type": "boolean",
"description": "If `true`, the container will be started as readonly. Defaults to `false`.\n"
},
"removeVolumes": {
"type": "boolean",
"description": "If `true`, it will remove anonymous volumes associated with the container. Defaults to `true`.\n"
},
"restart": {
"type": "string",
"description": "The restart policy for the container. Must be one of 'no', 'on-failure', 'always', 'unless-stopped'. Defaults to `no`.\n"
},
"rm": {
"type": "boolean",
"description": "If `true`, then the container will be automatically removed after his execution. Terraform won't check this container\nafter creation. Defaults to `false`.\n"
},
"securityOpts": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of string values to customize labels for MLS systems, such as SELinux. See\nhttps://docs.docker.com/engine/reference/run/#security-configuration.\n"
},
"shmSize": {
"type": "integer",
"description": "Size of `/dev/shm` in MBs.\n"
},
"start": {
"type": "boolean",
"description": "If `true`, then the Docker container will be started after creation. If `false`, then the container is only created.\nDefaults to `true`.\n"
},
"stdinOpen": {
"type": "boolean",
"description": "If `true`, keep STDIN open even if not attached (`docker run -i`). Defaults to `false`.\n"
},
"storageOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Key/value pairs for the storage driver options, e.g. `size`: `120G`\n"
},
"sysctls": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "A map of kernel parameters (sysctls) to set in the container.\n"
},
"tmpfs": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "A map of container directories which should be replaced by `tmpfs mounts`, and their corresponding mount options.\n"
},
"tty": {
"type": "boolean",
"description": "If `true`, allocate a pseudo-tty (`docker run -t`). Defaults to `false`.\n"
},
"ulimits": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerUlimit:ContainerUlimit"
},
"description": "Ulimit options to add.\n"
},
"uploads": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerUpload:ContainerUpload"
},
"description": "Specifies files to upload to the container before starting it. Only one of `content` or `content_base64` can be set and\nat least one of them has to be set.\n"
},
"user": {
"type": "string",
"description": "User used for run the first process. Format is `user` or `user:group` which user and group can be passed literraly or by\nname.\n"
},
"usernsMode": {
"type": "string",
"description": "Sets the usernamespace mode for the container when usernamespace remapping option is enabled.\n"
},
"volumes": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerVolume:ContainerVolume"
},
"description": "Spec for mounting volumes in the container.\n"
},
"workingDir": {
"type": "string",
"description": "The working directory for commands to run in.\n"
}
},
"requiredInputs": [
"image"
],
"stateInputs": {
"description": "Input properties used for looking up and filtering Container resources.\n",
"properties": {
"attach": {
"type": "boolean",
"description": "If `true` attach to the container after its creation and waits the end of its execution. Defaults to `false`.\n"
},
"bridge": {
"type": "string",
"description": "The network bridge of the container as read from its NetworkSettings.\n"
},
"capabilities": {
"$ref": "#/types/docker:index/ContainerCapabilities:ContainerCapabilities",
"description": "Add or drop certrain linux capabilities.\n"
},
"command": {
"type": "array",
"items": {
"type": "string"
},
"description": "The command to use to start the container. For example, to run `/usr/bin/myprogram -f baz.conf` set the command to be\n`[\"/usr/bin/myprogram\",\"-\",\"baz.con\"]`.\n"
},
"containerLogs": {
"type": "string",
"description": "The logs of the container if its execution is done (`attach` must be disabled).\n"
},
"cpuSet": {
"type": "string",
"description": "A comma-separated list or hyphen-separated range of CPUs a container can use, e.g. `0-1`.\n"
},
"cpuShares": {
"type": "integer",
"description": "CPU shares (relative weight) for the container.\n"
},
"destroyGraceSeconds": {
"type": "integer",
"description": "If defined will attempt to stop the container before destroying. Container will be destroyed after `n` seconds or on\nsuccessful stop.\n"
},
"devices": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerDevice:ContainerDevice"
},
"description": "Bind devices to the container.\n"
},
"dns": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS servers to use.\n"
},
"dnsOpts": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS options used by the DNS provider(s), see `resolv.conf` documentation for valid list of options.\n"
},
"dnsSearches": {
"type": "array",
"items": {
"type": "string"
},
"description": "DNS search domains that are used when bare unqualified hostnames are used inside of the container.\n"
},
"domainname": {
"type": "string",
"description": "Domain name of the container.\n"
},
"entrypoints": {
"type": "array",
"items": {
"type": "string"
},
"description": "The command to use as the Entrypoint for the container. The Entrypoint allows you to configure a container to run as an\nexecutable. For example, to run `/usr/bin/myprogram` when starting a container, set the entrypoint to be\n`\"/usr/bin/myprogra\"]`.\n"
},
"envs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Environment variables to set in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n"
},
"exitCode": {
"type": "integer",
"description": "The exit code of the container if its execution is done (`must_run` must be disabled).\n"
},
"gateway": {
"type": "string",
"description": "The network gateway of the container.\n",
"deprecationMessage": "Use `network_data` instead. The network gateway of the container as read from its NetworkSettings."
},
"groupAdds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Additional groups for the container user\n"
},
"healthcheck": {
"$ref": "#/types/docker:index/ContainerHealthcheck:ContainerHealthcheck",
"description": "A test to perform to check that the container is healthy\n"
},
"hostname": {
"type": "string",
"description": "Hostname of the container.\n"
},
"hosts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerHost:ContainerHost"
},
"description": "Additional hosts to add to the container.\n"
},
"image": {
"type": "string",
"description": "The ID of the image to back this container. The easiest way to get this value is to use the `docker_image` resource as\nis shown in the example.\n"
},
"init": {
"type": "boolean",
"description": "Configured whether an init process should be injected for this container. If unset this will default to the `dockerd`\ndefaults.\n"
},
"ipAddress": {
"type": "string",
"description": "The IP address of the container.\n",
"deprecationMessage": "Use `network_data` instead. The IP address of the container's first network it."
},
"ipPrefixLength": {
"type": "integer",
"description": "The IP prefix length of the container.\n",
"deprecationMessage": "Use `network_data` instead. The IP prefix length of the container as read from its NetworkSettings."
},
"ipcMode": {
"type": "string",
"description": "IPC sharing mode for the container. Possible values are: `none`, `private`, `shareable`, `container:<name|id>` or\n`host`.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerLabel:ContainerLabel"
},
"description": "User-defined key/value metadata\n"
},
"links": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set of links for link based connectivity between containers that are running on the same host.\n",
"deprecationMessage": "The --link flag is a legacy feature of Docker. It may eventually be removed."
},
"logDriver": {
"type": "string",
"description": "The logging driver to use for the container. Defaults to `json-file`.\n"
},
"logOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Key/value pairs to use as options for the logging driver.\n"
},
"logs": {
"type": "boolean",
"description": "Save the container logs (`attach` must be enabled). Defaults to `false`.\n"
},
"maxRetryCount": {
"type": "integer",
"description": "The maximum amount of times to an attempt a restart when `restart` is set to 'on-failure'.\n"
},
"memory": {
"type": "integer",
"description": "The memory limit for the container in MBs.\n"
},
"memorySwap": {
"type": "integer",
"description": "The total memory limit (memory + swap) for the container in MBs. This setting may compute to `-1` after `terraform\napply` if the target host doesn't support memory swap, when that is the case docker will use a soft limitation.\n"
},
"mounts": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerMount:ContainerMount"
},
"description": "Specification for mounts to be added to containers created as part of the service.\n"
},
"mustRun": {
"type": "boolean",
"description": "If `true`, then the Docker container will be kept running. If `false`, then as long as the container exists, Terraform\nassumes it is successful. Defaults to `true`.\n"
},
"name": {
"type": "string",
"description": "The name of the container.\n"
},
"networkAliases": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set an alias for the container in all specified networks\n",
"deprecationMessage": "Use networks_advanced instead. Will be removed in v3.0.0"
},
"networkDatas": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerNetworkData:ContainerNetworkData"
},
"description": "The data of the networks the container is connected to.\n"
},
"networkMode": {
"type": "string",
"description": "Network mode of the container.\n"
},
"networks": {
"type": "array",
"items": {
"type": "string"
},
"description": "ID of the networks in which the container is.\n",
"deprecationMessage": "Use networks_advanced instead. Will be removed in v3.0.0"
},
"networksAdvanced": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerNetworksAdvanced:ContainerNetworksAdvanced"
},
"description": "The networks the container is attached to\n"
},
"pidMode": {
"type": "string",
"description": "he PID (Process) Namespace mode for the container. Either `container:<name|id>` or `host`.\n"
},
"ports": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerPort:ContainerPort"
},
"description": "Publish a container's port(s) to the host.\n"
},
"privileged": {
"type": "boolean",
"description": "If `true`, the container runs in privileged mode.\n"
},
"publishAllPorts": {
"type": "boolean",
"description": "Publish all ports of the container.\n"
},
"readOnly": {
"type": "boolean",
"description": "If `true`, the container will be started as readonly. Defaults to `false`.\n"
},
"removeVolumes": {
"type": "boolean",
"description": "If `true`, it will remove anonymous volumes associated with the container. Defaults to `true`.\n"
},
"restart": {
"type": "string",
"description": "The restart policy for the container. Must be one of 'no', 'on-failure', 'always', 'unless-stopped'. Defaults to `no`.\n"
},
"rm": {
"type": "boolean",
"description": "If `true`, then the container will be automatically removed after his execution. Terraform won't check this container\nafter creation. Defaults to `false`.\n"
},
"securityOpts": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of string values to customize labels for MLS systems, such as SELinux. See\nhttps://docs.docker.com/engine/reference/run/#security-configuration.\n"
},
"shmSize": {
"type": "integer",
"description": "Size of `/dev/shm` in MBs.\n"
},
"start": {
"type": "boolean",
"description": "If `true`, then the Docker container will be started after creation. If `false`, then the container is only created.\nDefaults to `true`.\n"
},
"stdinOpen": {
"type": "boolean",
"description": "If `true`, keep STDIN open even if not attached (`docker run -i`). Defaults to `false`.\n"
},
"storageOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Key/value pairs for the storage driver options, e.g. `size`: `120G`\n"
},
"sysctls": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "A map of kernel parameters (sysctls) to set in the container.\n"
},
"tmpfs": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "A map of container directories which should be replaced by `tmpfs mounts`, and their corresponding mount options.\n"
},
"tty": {
"type": "boolean",
"description": "If `true`, allocate a pseudo-tty (`docker run -t`). Defaults to `false`.\n"
},
"ulimits": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerUlimit:ContainerUlimit"
},
"description": "Ulimit options to add.\n"
},
"uploads": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerUpload:ContainerUpload"
},
"description": "Specifies files to upload to the container before starting it. Only one of `content` or `content_base64` can be set and\nat least one of them has to be set.\n"
},
"user": {
"type": "string",
"description": "User used for run the first process. Format is `user` or `user:group` which user and group can be passed literraly or by\nname.\n"
},
"usernsMode": {
"type": "string",
"description": "Sets the usernamespace mode for the container when usernamespace remapping option is enabled.\n"
},
"volumes": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ContainerVolume:ContainerVolume"
},
"description": "Spec for mounting volumes in the container.\n"
},
"workingDir": {
"type": "string",
"description": "The working directory for commands to run in.\n"
}
},
"type": "object"
}
},
"docker:index/network:Network": {
"description": "<!-- Bug: Type and Name are switched -->\n`docker.Network` provides details about a specific Docker Network.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst privateNetwork = new docker.Network(\"private_network\", {});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nprivate_network = docker.Network(\"privateNetwork\")\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var privateNetwork = new Docker.Network(\"privateNetwork\", new Docker.NetworkArgs\n {\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.NewNetwork(ctx, \"privateNetwork\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Required\n\n- **name** (String) The name of the Docker network.\n\n### Optional\n\n- **attachable** (Boolean) Enable manual container attachment to the network.\n- **check_duplicate** (Boolean) Requests daemon to check for networks with same name.\n- **driver** (String) The driver of the Docker network. Possible values are `bridge`, `host`, `overlay`, `macvlan`. See [network docs](https://docs.docker.com/network/#network-drivers) for more details.\n- **id** (String) The ID of this resource.\n- **ingress** (Boolean) Create swarm routing-mesh network. Defaults to `false`.\n- **internal** (Boolean) Whether the network is internal.\n- **ipam_config** (Block Set) The IPAM configuration options (see below for nested schema)\n- **ipam_driver** (String) Driver used by the custom IP scheme of the network. Defaults to `default`\n- **ipv6** (Boolean) Enable IPv6 networking. Defaults to `false`.\n- **labels** (Block Set) User-defined key/value metadata (see below for nested schema)\n- **options** (Map of String) Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.\n\n### Read-Only\n\n- **scope** (String) Scope of the network. One of `swarm`, `global`, or `local`.\n\n<a id=\"nestedblock--ipam_config\"></a>\n### Nested Schema for `ipam_config`\n\nOptional:\n\n- **aux_address** (Map of String) Auxiliary IPv4 or IPv6 addresses used by Network driver\n- **gateway** (String) The IP address of the gateway\n- **ip_range** (String) The ip range in CIDR form\n- **subnet** (String) The subnet in CIDR form\n\n\n<a id=\"nestedblock--labels\"></a>\n### Nested Schema for `labels`\n\nRequired:\n\n- **label** (String) Name of the label\n- **value** (String) Value of the label\n\n\n## Import\n\n### Example Assuming you created a `network` as follows #!/bin/bash docker network create foo # prints the long ID 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73 you provide the definition for the resource as follows terraform resource \"docker_network\" \"foo\" {\n\n name = \"foo\" } then the import command is as follows #!/bin/bash\n\n```sh\n $ pulumi import docker:index/network:Network foo 87b57a9b91ecab2db2a6dbf38df74c67d7c7108cbe479d6576574ec2cd8c2d73\n```\n\n ",
"properties": {
"attachable": {
"type": "boolean",
"description": "Enable manual container attachment to the network.\n"
},
"checkDuplicate": {
"type": "boolean",
"description": "Requests daemon to check for networks with same name.\n"
},
"driver": {
"type": "string",
"description": "The driver of the Docker network. Possible values are `bridge`, `host`, `overlay`, `macvlan`. See [network\ndocs](https://docs.docker.com/network/#network-drivers) for more details.\n"
},
"ingress": {
"type": "boolean",
"description": "Create swarm routing-mesh network. Defaults to `false`.\n"
},
"internal": {
"type": "boolean",
"description": "Whether the network is internal.\n"
},
"ipamConfigs": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/NetworkIpamConfig:NetworkIpamConfig"
},
"description": "The IPAM configuration options\n"
},
"ipamDriver": {
"type": "string",
"description": "Driver used by the custom IP scheme of the network. Defaults to `default`\n"
},
"ipv6": {
"type": "boolean",
"description": "Enable IPv6 networking. Defaults to `false`.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/NetworkLabel:NetworkLabel"
},
"description": "User-defined key/value metadata\n"
},
"name": {
"type": "string",
"description": "The name of the Docker network.\n"
},
"options": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Only available with bridge networks. See [bridge options\ndocs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.\n"
},
"scope": {
"type": "string",
"description": "Scope of the network. One of `swarm`, `global`, or `local`.\n"
}
},
"required": [
"driver",
"internal",
"ipamConfigs",
"name",
"options",
"scope"
],
"inputProperties": {
"attachable": {
"type": "boolean",
"description": "Enable manual container attachment to the network.\n"
},
"checkDuplicate": {
"type": "boolean",
"description": "Requests daemon to check for networks with same name.\n"
},
"driver": {
"type": "string",
"description": "The driver of the Docker network. Possible values are `bridge`, `host`, `overlay`, `macvlan`. See [network\ndocs](https://docs.docker.com/network/#network-drivers) for more details.\n"
},
"ingress": {
"type": "boolean",
"description": "Create swarm routing-mesh network. Defaults to `false`.\n"
},
"internal": {
"type": "boolean",
"description": "Whether the network is internal.\n"
},
"ipamConfigs": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/NetworkIpamConfig:NetworkIpamConfig"
},
"description": "The IPAM configuration options\n"
},
"ipamDriver": {
"type": "string",
"description": "Driver used by the custom IP scheme of the network. Defaults to `default`\n"
},
"ipv6": {
"type": "boolean",
"description": "Enable IPv6 networking. Defaults to `false`.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/NetworkLabel:NetworkLabel"
},
"description": "User-defined key/value metadata\n"
},
"name": {
"type": "string",
"description": "The name of the Docker network.\n"
},
"options": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Only available with bridge networks. See [bridge options\ndocs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.\n"
}
},
"stateInputs": {
"description": "Input properties used for looking up and filtering Network resources.\n",
"properties": {
"attachable": {
"type": "boolean",
"description": "Enable manual container attachment to the network.\n"
},
"checkDuplicate": {
"type": "boolean",
"description": "Requests daemon to check for networks with same name.\n"
},
"driver": {
"type": "string",
"description": "The driver of the Docker network. Possible values are `bridge`, `host`, `overlay`, `macvlan`. See [network\ndocs](https://docs.docker.com/network/#network-drivers) for more details.\n"
},
"ingress": {
"type": "boolean",
"description": "Create swarm routing-mesh network. Defaults to `false`.\n"
},
"internal": {
"type": "boolean",
"description": "Whether the network is internal.\n"
},
"ipamConfigs": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/NetworkIpamConfig:NetworkIpamConfig"
},
"description": "The IPAM configuration options\n"
},
"ipamDriver": {
"type": "string",
"description": "Driver used by the custom IP scheme of the network. Defaults to `default`\n"
},
"ipv6": {
"type": "boolean",
"description": "Enable IPv6 networking. Defaults to `false`.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/NetworkLabel:NetworkLabel"
},
"description": "User-defined key/value metadata\n"
},
"name": {
"type": "string",
"description": "The name of the Docker network.\n"
},
"options": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Only available with bridge networks. See [bridge options\ndocs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.\n"
},
"scope": {
"type": "string",
"description": "Scope of the network. One of `swarm`, `global`, or `local`.\n"
}
},
"type": "object"
}
},
"docker:index/plugin:Plugin": {
"description": "<!-- Bug: Type and Name are switched -->\nManages the lifecycle of a Docker plugin.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst sample_volume_plugin = new docker.Plugin(\"sample-volume-plugin\", {\n alias: \"sample-volume-plugin\",\n enableTimeout: 60,\n enabled: false,\n envs: [\"DEBUG=1\"],\n forceDestroy: true,\n forceDisable: true,\n grantAllPermissions: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nsample_volume_plugin = docker.Plugin(\"sample-volume-plugin\",\n alias=\"sample-volume-plugin\",\n enable_timeout=60,\n enabled=False,\n envs=[\"DEBUG=1\"],\n force_destroy=True,\n force_disable=True,\n grant_all_permissions=True)\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var sample_volume_plugin = new Docker.Plugin(\"sample-volume-plugin\", new Docker.PluginArgs\n {\n Alias = \"sample-volume-plugin\",\n EnableTimeout = 60,\n Enabled = false,\n Envs = \n {\n \"DEBUG=1\",\n },\n ForceDestroy = true,\n ForceDisable = true,\n GrantAllPermissions = true,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.NewPlugin(ctx, \"sample_volume_plugin\", &docker.PluginArgs{\n\t\t\tAlias: pulumi.String(\"sample-volume-plugin\"),\n\t\t\tEnableTimeout: pulumi.Int(60),\n\t\t\tEnabled: pulumi.Bool(false),\n\t\t\tEnvs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"DEBUG=1\"),\n\t\t\t},\n\t\t\tForceDestroy: pulumi.Bool(true),\n\t\t\tForceDisable: pulumi.Bool(true),\n\t\t\tGrantAllPermissions: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Required\n\n- **name** (String) Docker Plugin name\n\n### Optional\n\n- **alias** (String) Docker Plugin alias\n- **enable_timeout** (Number) HTTP client timeout to enable the plugin\n- **enabled** (Boolean) If `true` the plugin is enabled. Defaults to `true`\n- **env** (Set of String) The environment variables in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n- **force_destroy** (Boolean) If true, then the plugin is destroyed forcibly\n- **force_disable** (Boolean) If true, then the plugin is disabled forcibly\n- **grant_all_permissions** (Boolean) If true, grant all permissions necessary to run the plugin\n- **grant_permissions** (Block Set) Grant specific permissions only (see below for nested schema)\n- **id** (String) The ID of this resource.\n\n### Read-Only\n\n- **plugin_reference** (String) Docker Plugin Reference\n\n<a id=\"nestedblock--grant_permissions\"></a>\n### Nested Schema for `grant_permissions`\n\nRequired:\n\n- **name** (String) The name of the permission\n- **value** (Set of String) The value of the permission\n\n\n## Import\n\nImport is supported using the following syntax#!/bin/bash\n\n```sh\n $ pulumi import docker:index/plugin:Plugin sample-volume-plugin \"$(docker plugin inspect -f {{.ID}} tiborvass/sample-volume-plugin:latest)\"\n```\n\n ",
"properties": {
"alias": {
"type": "string",
"description": "Docker Plugin alias\n"
},
"enableTimeout": {
"type": "integer",
"description": "HTTP client timeout to enable the plugin\n"
},
"enabled": {
"type": "boolean",
"description": "If `true` the plugin is enabled. Defaults to `true`\n"
},
"envs": {
"type": "array",
"items": {
"type": "string"
},
"description": "The environment variables in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n"
},
"forceDestroy": {
"type": "boolean",
"description": "If true, then the plugin is destroyed forcibly\n"
},
"forceDisable": {
"type": "boolean",
"description": "If true, then the plugin is disabled forcibly\n"
},
"grantAllPermissions": {
"type": "boolean",
"description": "If true, grant all permissions necessary to run the plugin\n"
},
"grantPermissions": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/PluginGrantPermission:PluginGrantPermission"
},
"description": "Grant specific permissions only\n"
},
"name": {
"type": "string",
"description": "Docker Plugin name\n"
},
"pluginReference": {
"type": "string",
"description": "Docker Plugin Reference\n"
}
},
"required": [
"alias",
"envs",
"name",
"pluginReference"
],
"inputProperties": {
"alias": {
"type": "string",
"description": "Docker Plugin alias\n"
},
"enableTimeout": {
"type": "integer",
"description": "HTTP client timeout to enable the plugin\n"
},
"enabled": {
"type": "boolean",
"description": "If `true` the plugin is enabled. Defaults to `true`\n"
},
"envs": {
"type": "array",
"items": {
"type": "string"
},
"description": "The environment variables in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n"
},
"forceDestroy": {
"type": "boolean",
"description": "If true, then the plugin is destroyed forcibly\n"
},
"forceDisable": {
"type": "boolean",
"description": "If true, then the plugin is disabled forcibly\n"
},
"grantAllPermissions": {
"type": "boolean",
"description": "If true, grant all permissions necessary to run the plugin\n"
},
"grantPermissions": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/PluginGrantPermission:PluginGrantPermission"
},
"description": "Grant specific permissions only\n"
},
"name": {
"type": "string",
"description": "Docker Plugin name\n"
}
},
"stateInputs": {
"description": "Input properties used for looking up and filtering Plugin resources.\n",
"properties": {
"alias": {
"type": "string",
"description": "Docker Plugin alias\n"
},
"enableTimeout": {
"type": "integer",
"description": "HTTP client timeout to enable the plugin\n"
},
"enabled": {
"type": "boolean",
"description": "If `true` the plugin is enabled. Defaults to `true`\n"
},
"envs": {
"type": "array",
"items": {
"type": "string"
},
"description": "The environment variables in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n"
},
"forceDestroy": {
"type": "boolean",
"description": "If true, then the plugin is destroyed forcibly\n"
},
"forceDisable": {
"type": "boolean",
"description": "If true, then the plugin is disabled forcibly\n"
},
"grantAllPermissions": {
"type": "boolean",
"description": "If true, grant all permissions necessary to run the plugin\n"
},
"grantPermissions": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/PluginGrantPermission:PluginGrantPermission"
},
"description": "Grant specific permissions only\n"
},
"name": {
"type": "string",
"description": "Docker Plugin name\n"
},
"pluginReference": {
"type": "string",
"description": "Docker Plugin Reference\n"
}
},
"type": "object"
}
},
"docker:index/registryImage:RegistryImage": {
"description": "<!-- Bug: Type and Name are switched -->\nManages the lifecycle of docker image/tag in a registry.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\nimport * as process from \"process\";\n\nconst helloworld = new docker.RegistryImage(\"helloworld\", {\n build: {\n context: `${process.cwd()}/absolutePathToContextFolder`,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nhelloworld = docker.RegistryImage(\"helloworld\", build=docker.RegistryImageBuildArgs(\n context=f\"{path['cwd']}/absolutePathToContextFolder\",\n))\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var helloworld = new Docker.RegistryImage(\"helloworld\", new Docker.RegistryImageArgs\n {\n Build = new Docker.Inputs.RegistryImageBuildArgs\n {\n Context = $\"{path.Cwd}/absolutePathToContextFolder\",\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.NewRegistryImage(ctx, \"helloworld\", &docker.RegistryImageArgs{\n\t\t\tBuild: &docker.RegistryImageBuildArgs{\n\t\t\t\tContext: pulumi.String(fmt.Sprintf(\"%v%v\", path.Cwd, \"/absolutePathToContextFolder\")),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Required\n\n- **name** (String) The name of the Docker image.\n\n### Optional\n\n- **build** (Block List, Max: 1) Definition for building the image (see below for nested schema)\n- **id** (String) The ID of this resource.\n- **insecure_skip_verify** (Boolean) If `true`, the verification of TLS certificates of the server/registry is disabled. Defaults to `false`\n- **keep_remotely** (Boolean) If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from the docker registry on destroy operation. Defaults to `false`\n\n### Read-Only\n\n- **sha256_digest** (String) The sha256 digest of the image.\n\n<a id=\"nestedblock--build\"></a>\n### Nested Schema for `build`\n\nRequired:\n\n- **context** (String) The absolute path to the context folder. You can use the helper function '${path.cwd}/context-dir'.\n\nOptional:\n\n- **auth_config** (Block List) The configuration for the authentication (see below for nested schema)\n- **build_args** (Map of String) Pairs for build-time variables in the form TODO\n- **build_id** (String) BuildID is an optional identifier that can be passed together with the build request. The\n- **cache_from** (List of String) Images to consider as cache sources\n- **cgroup_parent** (String) Optional parent cgroup for the container\n- **cpu_period** (Number) The length of a CPU period in microseconds\n- **cpu_quota** (Number) Microseconds of CPU time that the container can get in a CPU period\n- **cpu_set_cpus** (String) CPUs in which to allow execution (e.g., `0-3`, `0`, `1`)\n- **cpu_set_mems** (String) MEMs in which to allow execution (`0-3`, `0`, `1`)\n- **cpu_shares** (Number) CPU shares (relative weight)\n- **dockerfile** (String) Dockerfile file. Defaults to `Dockerfile`\n- **extra_hosts** (List of String) A list of hostnames/IP mappings to add to the containers /etc/hosts file. Specified in the form [\"hostname:IP\"]\n- **force_remove** (Boolean) Always remove intermediate containers\n- **isolation** (String) Isolation represents the isolation technology of a container. The supported values are\n- **labels** (Map of String) User-defined key/value metadata\n- **memory** (Number) Set memory limit for build\n- **memory_swap** (Number) Total memory (memory + swap), -1 to enable unlimited swap\n- **network_mode** (String) Set the networking mode for the RUN instructions during build\n- **no_cache** (Boolean) Do not use the cache when building the image\n- **platform** (String) Set platform if server is multi-platform capable\n- **pull_parent** (Boolean) Attempt to pull the image even if an older image exists locally\n- **remote_context** (String) A Git repository URI or HTTP/HTTPS context URI\n- **remove** (Boolean) Remove intermediate containers after a successful build (default behavior)\n- **security_opt** (List of String) The security options\n- **session_id** (String) Set an ID for the build session\n- **shm_size** (Number) Size of /dev/shm in bytes. The size must be greater than 0\n- **squash** (Boolean) If true the new layers are squashed into a new image with a single new layer\n- **suppress_output** (Boolean) Suppress the build output and print image ID on success\n- **target** (String) Set the target build stage to build\n- **ulimit** (Block List) Configuration for ulimits (see below for nested schema)\n- **version** (String) Version of the unerlying builder to use\n\n<a id=\"nestedblock--build--auth_config\"></a>\n### Nested Schema for `build.auth_config`\n\nRequired:\n\n- **host_name** (String) hostname of the registry\n\nOptional:\n\n- **auth** (String) the auth token\n- **email** (String) the user emal\n- **identity_token** (String) the identity token\n- **password** (String) the registry password\n- **registry_token** (String) the registry token\n- **server_address** (String) the server address\n- **user_name** (String) the registry user name\n\n\n<a id=\"nestedblock--build--ulimit\"></a>\n### Nested Schema for `build.ulimit`\n\nRequired:\n\n- **hard** (Number) soft limit\n- **name** (String) type of ulimit, e.g. `nofile`\n- **soft** (Number) hard limit\n",
"properties": {
"build": {
"$ref": "#/types/docker:index/RegistryImageBuild:RegistryImageBuild",
"description": "Definition for building the image\n"
},
"insecureSkipVerify": {
"type": "boolean",
"description": "If `true`, the verification of TLS certificates of the server/registry is disabled. Defaults to `false`\n"
},
"keepRemotely": {
"type": "boolean",
"description": "If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from\nthe docker registry on destroy operation. Defaults to `false`\n"
},
"name": {
"type": "string",
"description": "The name of the Docker image.\n"
},
"sha256Digest": {
"type": "string",
"description": "The sha256 digest of the image.\n"
}
},
"required": [
"name",
"sha256Digest"
],
"inputProperties": {
"build": {
"$ref": "#/types/docker:index/RegistryImageBuild:RegistryImageBuild",
"description": "Definition for building the image\n"
},
"insecureSkipVerify": {
"type": "boolean",
"description": "If `true`, the verification of TLS certificates of the server/registry is disabled. Defaults to `false`\n"
},
"keepRemotely": {
"type": "boolean",
"description": "If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from\nthe docker registry on destroy operation. Defaults to `false`\n"
},
"name": {
"type": "string",
"description": "The name of the Docker image.\n"
}
},
"stateInputs": {
"description": "Input properties used for looking up and filtering RegistryImage resources.\n",
"properties": {
"build": {
"$ref": "#/types/docker:index/RegistryImageBuild:RegistryImageBuild",
"description": "Definition for building the image\n"
},
"insecureSkipVerify": {
"type": "boolean",
"description": "If `true`, the verification of TLS certificates of the server/registry is disabled. Defaults to `false`\n"
},
"keepRemotely": {
"type": "boolean",
"description": "If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from\nthe docker registry on destroy operation. Defaults to `false`\n"
},
"name": {
"type": "string",
"description": "The name of the Docker image.\n"
},
"sha256Digest": {
"type": "string",
"description": "The sha256 digest of the image.\n"
}
},
"type": "object"
}
},
"docker:index/remoteImage:RemoteImage": {
"description": "<!-- Bug: Type and Name are switched -->\nPulls a Docker image to a given Docker host from a Docker Registry.\n This resource will *not* pull new layers of the image automatically unless used in conjunction with docker.RegistryImage data source to update the `pull_triggers` field.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Basic\n\nFinds and downloads the latest `ubuntu:precise` image but does not check\nfor further updates of the image\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst ubuntu = new docker.RemoteImage(\"ubuntu\", {\n name: \"ubuntu:precise\",\n});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nubuntu = docker.RemoteImage(\"ubuntu\", name=\"ubuntu:precise\")\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var ubuntu = new Docker.RemoteImage(\"ubuntu\", new Docker.RemoteImageArgs\n {\n Name = \"ubuntu:precise\",\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.NewRemoteImage(ctx, \"ubuntu\", &docker.RemoteImageArgs{\n\t\t\tName: pulumi.String(\"ubuntu:precise\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% example %}}\n### Dynamic updates\n\nTo be able to update an image dynamically when the `sha256` sum changes,\nyou need to use it in combination with `docker.RegistryImage` as follows:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst ubuntuRegistryImage = docker.getRegistryImage({\n name: \"ubuntu:precise\",\n});\nconst ubuntuRemoteImage = new docker.RemoteImage(\"ubuntuRemoteImage\", {\n name: ubuntuRegistryImage.then(ubuntuRegistryImage => ubuntuRegistryImage.name),\n pullTriggers: [ubuntuRegistryImage.then(ubuntuRegistryImage => ubuntuRegistryImage.sha256Digest)],\n});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nubuntu_registry_image = docker.get_registry_image(name=\"ubuntu:precise\")\nubuntu_remote_image = docker.RemoteImage(\"ubuntuRemoteImage\",\n name=ubuntu_registry_image.name,\n pull_triggers=[ubuntu_registry_image.sha256_digest])\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var ubuntuRegistryImage = Output.Create(Docker.GetRegistryImage.InvokeAsync(new Docker.GetRegistryImageArgs\n {\n Name = \"ubuntu:precise\",\n }));\n var ubuntuRemoteImage = new Docker.RemoteImage(\"ubuntuRemoteImage\", new Docker.RemoteImageArgs\n {\n Name = ubuntuRegistryImage.Apply(ubuntuRegistryImage => ubuntuRegistryImage.Name),\n PullTriggers = \n {\n ubuntuRegistryImage.Apply(ubuntuRegistryImage => ubuntuRegistryImage.Sha256Digest),\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tubuntuRegistryImage, err := docker.LookupRegistryImage(ctx, &docker.LookupRegistryImageArgs{\n\t\t\tName: \"ubuntu:precise\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = docker.NewRemoteImage(ctx, \"ubuntuRemoteImage\", &docker.RemoteImageArgs{\n\t\t\tName: pulumi.String(ubuntuRegistryImage.Name),\n\t\t\tPullTriggers: pulumi.StringArray{\n\t\t\t\tpulumi.String(ubuntuRegistryImage.Sha256Digest),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% example %}}\n### Build\n\nYou can also use the resource to build an image.\nIn this case the image \"zoo\" and \"zoo:develop\" are built.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst zoo = new docker.RemoteImage(\"zoo\", {\n name: \"zoo\",\n build: {\n path: \".\",\n tags: [\"zoo:develop\"],\n buildArg: {\n foo: \"zoo\",\n },\n label: {\n author: \"zoo\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nzoo = docker.RemoteImage(\"zoo\",\n name=\"zoo\",\n build=docker.RemoteImageBuildArgs(\n path=\".\",\n tags=[\"zoo:develop\"],\n build_arg={\n \"foo\": \"zoo\",\n },\n label={\n \"author\": \"zoo\",\n },\n ))\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var zoo = new Docker.RemoteImage(\"zoo\", new Docker.RemoteImageArgs\n {\n Name = \"zoo\",\n Build = new Docker.Inputs.RemoteImageBuildArgs\n {\n Path = \".\",\n Tags = \n {\n \"zoo:develop\",\n },\n BuildArg = \n {\n { \"foo\", \"zoo\" },\n },\n Label = \n {\n { \"author\", \"zoo\" },\n },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.NewRemoteImage(ctx, \"zoo\", &docker.RemoteImageArgs{\n\t\t\tName: pulumi.String(\"zoo\"),\n\t\t\tBuild: &docker.RemoteImageBuildArgs{\n\t\t\t\tPath: pulumi.String(\".\"),\n\t\t\t\tTags: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"zoo:develop\"),\n\t\t\t\t},\n\t\t\t\tBuildArg: pulumi.StringMap{\n\t\t\t\t\t\"foo\": pulumi.String(\"zoo\"),\n\t\t\t\t},\n\t\t\t\tLabel: pulumi.StringMap{\n\t\t\t\t\t\"author\": pulumi.String(\"zoo\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Required\n\n- **name** (String) The name of the Docker image, including any tags or SHA256 repo digests.\n\n### Optional\n\n- **build** (Block Set, Max: 1) Configuration to build an image. Please see [docker build command reference](https://docs.docker.com/engine/reference/commandline/build/#options) too. (see below for nested schema)\n- **force_remove** (Boolean) If true, then the image is removed forcibly when the resource is destroyed.\n- **id** (String) The ID of this resource.\n- **keep_locally** (Boolean) If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from the docker local storage on destroy operation.\n- **pull_trigger** (String, Deprecated) A value which cause an image pull when changed\n- **pull_triggers** (Set of String) List of values which cause an image pull when changed. This is used to store the image digest from the registry when using the docker_registry_image.\n\n### Read-Only\n\n- **latest** (String, Deprecated) The ID of the image in the form of `sha256:<hash>` image digest. Do not confuse it with the default `latest` tag.\n- **output** (String, Deprecated)\n- **repo_digest** (String) The image sha256 digest in the form of `repo[:tag]@sha256:<hash>`.\n\n<a id=\"nestedblock--build\"></a>\n### Nested Schema for `build`\n\nRequired:\n\n- **path** (String) Context path\n\nOptional:\n\n- **build_arg** (Map of String) Set build-time variables\n- **dockerfile** (String) Name of the Dockerfile. Defaults to `Dockerfile`.\n- **force_remove** (Boolean) Always remove intermediate containers\n- **label** (Map of String) Set metadata for an image\n- **no_cache** (Boolean) Do not use cache when building the image\n- **remove** (Boolean) Remove intermediate containers after a successful build. Defaults to `true`.\n- **tag** (List of String) Name and optionally a tag in the 'name:tag' format\n- **target** (String) Set the target build stage to build\n",
"properties": {
"build": {
"$ref": "#/types/docker:index/RemoteImageBuild:RemoteImageBuild",
"description": "Configuration to build an image. Please see [docker build command\nreference](https://docs.docker.com/engine/reference/commandline/build/#options) too.\n"
},
"forceRemove": {
"type": "boolean",
"description": "If true, then the image is removed forcibly when the resource is destroyed.\n"
},
"keepLocally": {
"type": "boolean",
"description": "If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from\nthe docker local storage on destroy operation.\n"
},
"latest": {
"type": "string",
"description": "The ID of the image in the form of `sha256:<hash>` image digest. Do not confuse it with the default `latest` tag.\n",
"deprecationMessage": "Use repo_digest instead"
},
"name": {
"type": "string",
"description": "The name of the Docker image, including any tags or SHA256 repo digests.\n"
},
"output": {
"type": "string",
"deprecationMessage": "Is unused and will be removed."
},
"pullTrigger": {
"type": "string",
"description": "A value which cause an image pull when changed\n",
"deprecationMessage": "Use field pull_triggers instead"
},
"pullTriggers": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of values which cause an image pull when changed. This is used to store the image digest from the registry when\nusing the [docker_registry_image](../data-sources/registry_image.md).\n"
},
"repoDigest": {
"type": "string",
"description": "The image sha256 digest in the form of `repo[:tag]@sha256:<hash>`.\n"
}
},
"required": [
"latest",
"name",
"output",
"repoDigest"
],
"inputProperties": {
"build": {
"$ref": "#/types/docker:index/RemoteImageBuild:RemoteImageBuild",
"description": "Configuration to build an image. Please see [docker build command\nreference](https://docs.docker.com/engine/reference/commandline/build/#options) too.\n"
},
"forceRemove": {
"type": "boolean",
"description": "If true, then the image is removed forcibly when the resource is destroyed.\n"
},
"keepLocally": {
"type": "boolean",
"description": "If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from\nthe docker local storage on destroy operation.\n"
},
"name": {
"type": "string",
"description": "The name of the Docker image, including any tags or SHA256 repo digests.\n"
},
"pullTrigger": {
"type": "string",
"description": "A value which cause an image pull when changed\n",
"deprecationMessage": "Use field pull_triggers instead"
},
"pullTriggers": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of values which cause an image pull when changed. This is used to store the image digest from the registry when\nusing the [docker_registry_image](../data-sources/registry_image.md).\n"
}
},
"requiredInputs": [
"name"
],
"stateInputs": {
"description": "Input properties used for looking up and filtering RemoteImage resources.\n",
"properties": {
"build": {
"$ref": "#/types/docker:index/RemoteImageBuild:RemoteImageBuild",
"description": "Configuration to build an image. Please see [docker build command\nreference](https://docs.docker.com/engine/reference/commandline/build/#options) too.\n"
},
"forceRemove": {
"type": "boolean",
"description": "If true, then the image is removed forcibly when the resource is destroyed.\n"
},
"keepLocally": {
"type": "boolean",
"description": "If true, then the Docker image won't be deleted on destroy operation. If this is false, it will delete the image from\nthe docker local storage on destroy operation.\n"
},
"latest": {
"type": "string",
"description": "The ID of the image in the form of `sha256:<hash>` image digest. Do not confuse it with the default `latest` tag.\n",
"deprecationMessage": "Use repo_digest instead"
},
"name": {
"type": "string",
"description": "The name of the Docker image, including any tags or SHA256 repo digests.\n"
},
"output": {
"type": "string",
"deprecationMessage": "Is unused and will be removed."
},
"pullTrigger": {
"type": "string",
"description": "A value which cause an image pull when changed\n",
"deprecationMessage": "Use field pull_triggers instead"
},
"pullTriggers": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of values which cause an image pull when changed. This is used to store the image digest from the registry when\nusing the [docker_registry_image](../data-sources/registry_image.md).\n"
},
"repoDigest": {
"type": "string",
"description": "The image sha256 digest in the form of `repo[:tag]@sha256:<hash>`.\n"
}
},
"type": "object"
}
},
"docker:index/secret:Secret": {
"description": "\n\n\n## Import\n\nImport is supported using the following syntax#!/bin/bash # Docker secret cannot be imported as the secret data, once set, is never exposed again. ",
"properties": {
"data": {
"type": "string",
"description": "Base64-url-safe-encoded secret data\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/SecretLabel:SecretLabel"
},
"description": "User-defined key/value metadata\n"
},
"name": {
"type": "string",
"description": "User-defined name of the secret\n"
}
},
"required": [
"data",
"name"
],
"inputProperties": {
"data": {
"type": "string",
"description": "Base64-url-safe-encoded secret data\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/SecretLabel:SecretLabel"
},
"description": "User-defined key/value metadata\n"
},
"name": {
"type": "string",
"description": "User-defined name of the secret\n"
}
},
"requiredInputs": [
"data"
],
"stateInputs": {
"description": "Input properties used for looking up and filtering Secret resources.\n",
"properties": {
"data": {
"type": "string",
"description": "Base64-url-safe-encoded secret data\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/SecretLabel:SecretLabel"
},
"description": "User-defined key/value metadata\n"
},
"name": {
"type": "string",
"description": "User-defined name of the secret\n"
}
},
"type": "object"
}
},
"docker:index/service:Service": {
"description": "\n\n\n## Import\n\n### Example Assuming you created a `service` as follows #!/bin/bash docker service create --name foo -p 8080:80 nginx # prints th ID 4pcphbxkfn2rffhbhe6czytgi you provide the definition for the resource as follows terraform resource \"docker_service\" \"foo\" {\n\n name = \"foo\"\n\n task_spec {\n\n\n\n container_spec {\n\n\n\n\n\n image = \"nginx\"\n\n\n\n }\n\n }\n\n endpoint_spec {\n\n\n\n ports {\n\n\n\n\n\n target_port\n\n\n\n= \"80\"\n\n\n\n\n\n published_port = \"8080\"\n\n\n\n }\n\n } } then the import command is as follows #!/bin/bash\n\n```sh\n $ pulumi import docker:index/service:Service foo 4pcphbxkfn2rffhbhe6czytgi\n```\n\n ",
"properties": {
"auth": {
"$ref": "#/types/docker:index/ServiceAuth:ServiceAuth",
"description": "Configuration for the authentication for pulling the images of the service\n"
},
"convergeConfig": {
"$ref": "#/types/docker:index/ServiceConvergeConfig:ServiceConvergeConfig",
"description": "A configuration to ensure that a service converges aka reaches the desired that of all task up and running\n"
},
"endpointSpec": {
"$ref": "#/types/docker:index/ServiceEndpointSpec:ServiceEndpointSpec",
"description": "Properties that can be configured to access and load balance a service\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceLabel:ServiceLabel"
},
"description": "User-defined key/value metadata\n"
},
"mode": {
"$ref": "#/types/docker:index/ServiceMode:ServiceMode",
"description": "Scheduling mode for the service\n"
},
"name": {
"type": "string",
"description": "Name of the service\n"
},
"rollbackConfig": {
"$ref": "#/types/docker:index/ServiceRollbackConfig:ServiceRollbackConfig",
"description": "Specification for the rollback strategy of the service\n"
},
"taskSpec": {
"$ref": "#/types/docker:index/ServiceTaskSpec:ServiceTaskSpec",
"description": "User modifiable task configuration\n"
},
"updateConfig": {
"$ref": "#/types/docker:index/ServiceUpdateConfig:ServiceUpdateConfig",
"description": "Specification for the update strategy of the service\n"
}
},
"required": [
"endpointSpec",
"labels",
"mode",
"name",
"taskSpec"
],
"inputProperties": {
"auth": {
"$ref": "#/types/docker:index/ServiceAuth:ServiceAuth",
"description": "Configuration for the authentication for pulling the images of the service\n"
},
"convergeConfig": {
"$ref": "#/types/docker:index/ServiceConvergeConfig:ServiceConvergeConfig",
"description": "A configuration to ensure that a service converges aka reaches the desired that of all task up and running\n"
},
"endpointSpec": {
"$ref": "#/types/docker:index/ServiceEndpointSpec:ServiceEndpointSpec",
"description": "Properties that can be configured to access and load balance a service\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceLabel:ServiceLabel"
},
"description": "User-defined key/value metadata\n"
},
"mode": {
"$ref": "#/types/docker:index/ServiceMode:ServiceMode",
"description": "Scheduling mode for the service\n"
},
"name": {
"type": "string",
"description": "Name of the service\n"
},
"rollbackConfig": {
"$ref": "#/types/docker:index/ServiceRollbackConfig:ServiceRollbackConfig",
"description": "Specification for the rollback strategy of the service\n"
},
"taskSpec": {
"$ref": "#/types/docker:index/ServiceTaskSpec:ServiceTaskSpec",
"description": "User modifiable task configuration\n"
},
"updateConfig": {
"$ref": "#/types/docker:index/ServiceUpdateConfig:ServiceUpdateConfig",
"description": "Specification for the update strategy of the service\n"
}
},
"requiredInputs": [
"taskSpec"
],
"stateInputs": {
"description": "Input properties used for looking up and filtering Service resources.\n",
"properties": {
"auth": {
"$ref": "#/types/docker:index/ServiceAuth:ServiceAuth",
"description": "Configuration for the authentication for pulling the images of the service\n"
},
"convergeConfig": {
"$ref": "#/types/docker:index/ServiceConvergeConfig:ServiceConvergeConfig",
"description": "A configuration to ensure that a service converges aka reaches the desired that of all task up and running\n"
},
"endpointSpec": {
"$ref": "#/types/docker:index/ServiceEndpointSpec:ServiceEndpointSpec",
"description": "Properties that can be configured to access and load balance a service\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/ServiceLabel:ServiceLabel"
},
"description": "User-defined key/value metadata\n"
},
"mode": {
"$ref": "#/types/docker:index/ServiceMode:ServiceMode",
"description": "Scheduling mode for the service\n"
},
"name": {
"type": "string",
"description": "Name of the service\n"
},
"rollbackConfig": {
"$ref": "#/types/docker:index/ServiceRollbackConfig:ServiceRollbackConfig",
"description": "Specification for the rollback strategy of the service\n"
},
"taskSpec": {
"$ref": "#/types/docker:index/ServiceTaskSpec:ServiceTaskSpec",
"description": "User modifiable task configuration\n"
},
"updateConfig": {
"$ref": "#/types/docker:index/ServiceUpdateConfig:ServiceUpdateConfig",
"description": "Specification for the update strategy of the service\n"
}
},
"type": "object"
}
},
"docker:index/serviceConfig:ServiceConfig": {
"description": "\n\n\n## Import\n\n### Example Assuming you created a `config` as follows #!/bin/bash printf '{\"a\":\"b\"}' | docker config create foo - # prints the id\n\n08c26c477474478d971139f750984775a7f019dbe8a2e7f09d66a187c009e66d you provide the definition for the resource as follows terraform resource \"docker_config\" \"foo\" {\n\n name = \"foo\"\n\n data = base64encode(\"{\\\"a\\\"\\\"b\\\"}\") } then the import command is as follows #!/bin/bash\n\n```sh\n $ pulumi import docker:index/serviceConfig:ServiceConfig foo 08c26c477474478d971139f750984775a7f019dbe8a2e7f09d66a187c009e66d\n```\n\n ",
"properties": {
"data": {
"type": "string",
"description": "Base64-url-safe-encoded config data\n"
},
"name": {
"type": "string",
"description": "User-defined name of the config\n"
}
},
"required": [
"data",
"name"
],
"inputProperties": {
"data": {
"type": "string",
"description": "Base64-url-safe-encoded config data\n"
},
"name": {
"type": "string",
"description": "User-defined name of the config\n"
}
},
"requiredInputs": [
"data"
],
"stateInputs": {
"description": "Input properties used for looking up and filtering ServiceConfig resources.\n",
"properties": {
"data": {
"type": "string",
"description": "Base64-url-safe-encoded config data\n"
},
"name": {
"type": "string",
"description": "User-defined name of the config\n"
}
},
"type": "object"
}
},
"docker:index/volume:Volume": {
"description": "<!-- Bug: Type and Name are switched -->\nCreates and destroys a volume in Docker. This can be used alongside docker.Container to prepare volumes that can be shared across containers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst sharedVolume = new docker.Volume(\"shared_volume\", {});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nshared_volume = docker.Volume(\"sharedVolume\")\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var sharedVolume = new Docker.Volume(\"sharedVolume\", new Docker.VolumeArgs\n {\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.NewVolume(ctx, \"sharedVolume\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Optional\n\n- **driver** (String) Driver type for the volume. Defaults to `local`.\n- **driver_opts** (Map of String) Options specific to the driver.\n- **id** (String) The ID of this resource.\n- **labels** (Block Set) User-defined key/value metadata (see below for nested schema)\n- **name** (String) The name of the Docker volume (will be generated if not provided).\n\n### Read-Only\n\n- **mountpoint** (String) The mountpoint of the volume.\n\n<a id=\"nestedblock--labels\"></a>\n### Nested Schema for `labels`\n\nRequired:\n\n- **label** (String) Name of the label\n- **value** (String) Value of the label\n\n\n## Import\n\n### Example Assuming you created a `volume` as follows #!/bin/bash docker volume create # prints the long ID 524b0457aa2a87dd2b75c74c3e4e53f406974249e63ab3ed9bf21e5644f9dc7d you provide the definition for the resource as follows terraform resource \"docker_volume\" \"foo\" {\n\n name = \"524b0457aa2a87dd2b75c74c3e4e53f406974249e63ab3ed9bf21e5644f9dc7d\" } then the import command is as follows #!/bin/bash\n\n```sh\n $ pulumi import docker:index/volume:Volume foo 524b0457aa2a87dd2b75c74c3e4e53f406974249e63ab3ed9bf21e5644f9dc7d\n```\n\n ",
"properties": {
"driver": {
"type": "string",
"description": "Driver type for the volume. Defaults to `local`.\n"
},
"driverOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Options specific to the driver.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/VolumeLabel:VolumeLabel"
},
"description": "User-defined key/value metadata\n"
},
"mountpoint": {
"type": "string",
"description": "The mountpoint of the volume.\n"
},
"name": {
"type": "string",
"description": "The name of the Docker volume (will be generated if not provided).\n"
}
},
"required": [
"driver",
"mountpoint",
"name"
],
"inputProperties": {
"driver": {
"type": "string",
"description": "Driver type for the volume. Defaults to `local`.\n"
},
"driverOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Options specific to the driver.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/VolumeLabel:VolumeLabel"
},
"description": "User-defined key/value metadata\n"
},
"name": {
"type": "string",
"description": "The name of the Docker volume (will be generated if not provided).\n"
}
},
"stateInputs": {
"description": "Input properties used for looking up and filtering Volume resources.\n",
"properties": {
"driver": {
"type": "string",
"description": "Driver type for the volume. Defaults to `local`.\n"
},
"driverOpts": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
"description": "Options specific to the driver.\n"
},
"labels": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/VolumeLabel:VolumeLabel"
},
"description": "User-defined key/value metadata\n"
},
"mountpoint": {
"type": "string",
"description": "The mountpoint of the volume.\n"
},
"name": {
"type": "string",
"description": "The name of the Docker volume (will be generated if not provided).\n"
}
},
"type": "object"
}
}
},
"functions": {
"docker:index/getNetwork:getNetwork": {
"description": "`docker.Network` provides details about a specific Docker Network.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst main = pulumi.output(docker.getNetwork({\n name: \"main\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nmain = docker.get_network(name=\"main\")\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var main = Output.Create(Docker.GetNetwork.InvokeAsync(new Docker.GetNetworkArgs\n {\n Name = \"main\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.LookupNetwork(ctx, &docker.LookupNetworkArgs{\n\t\t\tName: \"main\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Required\n\n- **name** (String) The name of the Docker network.\n\n### Read-Only\n\n- **driver** (String) The driver of the Docker network. Possible values are `bridge`, `host`, `overlay`, `macvlan`. See [network docs](https://docs.docker.com/network/#network-drivers) for more details.\n- **id** (String) The ID of this resource.\n- **internal** (Boolean) If `true`, the network is internal.\n- **ipam_config** (Set of Object) The IPAM configuration options (see below for nested schema)\n- **options** (Map of String) Only available with bridge networks. See [bridge options docs](https://docs.docker.com/engine/reference/commandline/network_create/#bridge-driver-options) for more details.\n- **scope** (String) Scope of the network. One of `swarm`, `global`, or `local`.\n\n<a id=\"nestedatt--ipam_config\"></a>\n### Nested Schema for `ipam_config`\n\nRead-Only:\n\n- **aux_address** (Map of String)\n- **gateway** (String)\n- **ip_range** (String)\n- **subnet** (String)\n",
"inputs": {
"description": "A collection of arguments for invoking getNetwork.\n",
"properties": {
"name": {
"type": "string"
}
},
"type": "object",
"required": [
"name"
]
},
"outputs": {
"description": "A collection of values returned by getNetwork.\n",
"properties": {
"driver": {
"type": "string"
},
"id": {
"type": "string"
},
"internal": {
"type": "boolean"
},
"ipamConfigs": {
"type": "array",
"items": {
"$ref": "#/types/docker:index/getNetworkIpamConfig:getNetworkIpamConfig"
}
},
"name": {
"type": "string"
},
"options": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
}
},
"scope": {
"type": "string"
}
},
"type": "object",
"required": [
"driver",
"id",
"internal",
"ipamConfigs",
"name",
"options",
"scope"
]
}
},
"docker:index/getPlugin:getPlugin": {
"description": "Reads the local Docker plugin. The plugin must be installed locally.\n\n{{% examples %}}\n## Example Usage\n\n### With alias\ndata \"docker.Plugin\" \"by_alias\" {\n alias = \"sample-volume-plugin:latest\"\n}\n{{% /examples %}}\n## Schema\n\n### Optional\n\n- **alias** (String) The alias of the Docker plugin. If the tag is omitted, `:latest` is complemented to the attribute value.\n- **id** (String) The ID of the plugin, which has precedence over the `alias` of both are given\n\n### Read-Only\n\n- **enabled** (Boolean) If `true` the plugin is enabled\n- **env** (Set of String) The environment variables in the form of `KEY=VALUE`, e.g. `DEBUG=0`\n- **grant_all_permissions** (Boolean) If true, grant all permissions necessary to run the plugin\n- **name** (String) The plugin name. If the tag is omitted, `:latest` is complemented to the attribute value.\n- **plugin_reference** (String) The Docker Plugin Reference\n",
"inputs": {
"description": "A collection of arguments for invoking getPlugin.\n",
"properties": {
"alias": {
"type": "string"
},
"id": {
"type": "string"
}
},
"type": "object"
},
"outputs": {
"description": "A collection of values returned by getPlugin.\n",
"properties": {
"alias": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"envs": {
"type": "array",
"items": {
"type": "string"
}
},
"grantAllPermissions": {
"type": "boolean"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"pluginReference": {
"type": "string"
}
},
"type": "object",
"required": [
"enabled",
"envs",
"grantAllPermissions",
"name",
"pluginReference"
]
}
},
"docker:index/getRegistryImage:getRegistryImage": {
"description": "Reads the image metadata from a Docker Registry. Used in conjunction with the docker.RemoteImage resource to keep an image up to date on the latest available version of the tag.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\nconst ubuntuRegistryImage = docker.getRegistryImage({\n name: \"ubuntu:precise\",\n});\nconst ubuntuRemoteImage = new docker.RemoteImage(\"ubuntuRemoteImage\", {\n name: ubuntuRegistryImage.then(ubuntuRegistryImage => ubuntuRegistryImage.name),\n pullTriggers: [ubuntuRegistryImage.then(ubuntuRegistryImage => ubuntuRegistryImage.sha256Digest)],\n});\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nubuntu_registry_image = docker.get_registry_image(name=\"ubuntu:precise\")\nubuntu_remote_image = docker.RemoteImage(\"ubuntuRemoteImage\",\n name=ubuntu_registry_image.name,\n pull_triggers=[ubuntu_registry_image.sha256_digest])\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var ubuntuRegistryImage = Output.Create(Docker.GetRegistryImage.InvokeAsync(new Docker.GetRegistryImageArgs\n {\n Name = \"ubuntu:precise\",\n }));\n var ubuntuRemoteImage = new Docker.RemoteImage(\"ubuntuRemoteImage\", new Docker.RemoteImageArgs\n {\n Name = ubuntuRegistryImage.Apply(ubuntuRegistryImage => ubuntuRegistryImage.Name),\n PullTriggers = \n {\n ubuntuRegistryImage.Apply(ubuntuRegistryImage => ubuntuRegistryImage.Sha256Digest),\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tubuntuRegistryImage, err := docker.LookupRegistryImage(ctx, &docker.LookupRegistryImageArgs{\n\t\t\tName: \"ubuntu:precise\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = docker.NewRemoteImage(ctx, \"ubuntuRemoteImage\", &docker.RemoteImageArgs{\n\t\t\tName: pulumi.String(ubuntuRegistryImage.Name),\n\t\t\tPullTriggers: pulumi.StringArray{\n\t\t\t\tpulumi.String(ubuntuRegistryImage.Sha256Digest),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Required\n\n- **name** (String) The name of the Docker image, including any tags. e.g. `alpine:latest`\n\n### Optional\n\n- **id** (String) The ID of this resource.\n- **insecure_skip_verify** (Boolean) If `true`, the verification of TLS certificates of the server/registry is disabled. Defaults to `false`\n\n### Read-Only\n\n- **sha256_digest** (String) The content digest of the image, as stored in the registry.\n",
"inputs": {
"description": "A collection of arguments for invoking getRegistryImage.\n",
"properties": {
"insecureSkipVerify": {
"type": "boolean"
},
"name": {
"type": "string"
}
},
"type": "object",
"required": [
"name"
]
},
"outputs": {
"description": "A collection of values returned by getRegistryImage.\n",
"properties": {
"id": {
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
"insecureSkipVerify": {
"type": "boolean"
},
"name": {
"type": "string"
},
"sha256Digest": {
"type": "string"
}
},
"type": "object",
"required": [
"name",
"sha256Digest",
"id"
]
}
},
"docker:index/getRemoteImage:getRemoteImage": {
"description": "`docker.RemoteImage` provides details about a specific Docker Image which need to be presend on the Docker Host\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as docker from \"@pulumi/docker\";\n\n// uses the 'latest' tag\nconst latest = pulumi.output(docker.getRemoteImage({\n name: \"nginx\",\n}, { async: true }));\n// uses a specific tag\nconst specific = pulumi.output(docker.getRemoteImage({\n name: \"nginx:1.17.6\",\n}, { async: true }));\n// use the image digest\nconst digest = pulumi.output(docker.getRemoteImage({\n name: \"nginx@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\",\n}, { async: true }));\n// uses the tag and the image digest\nconst tagAndDigest = pulumi.output(docker.getRemoteImage({\n name: \"nginx:1.19.1@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\",\n}, { async: true }));\n```\n```python\nimport pulumi\nimport pulumi_docker as docker\n\nlatest = docker.get_remote_image(name=\"nginx\")\nspecific = docker.get_remote_image(name=\"nginx:1.17.6\")\ndigest = docker.get_remote_image(name=\"nginx@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\")\ntag_and_digest = docker.get_remote_image(name=\"nginx:1.19.1@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\")\n```\n```csharp\nusing Pulumi;\nusing Docker = Pulumi.Docker;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var latest = Output.Create(Docker.GetRemoteImage.InvokeAsync(new Docker.GetRemoteImageArgs\n {\n Name = \"nginx\",\n }));\n var specific = Output.Create(Docker.GetRemoteImage.InvokeAsync(new Docker.GetRemoteImageArgs\n {\n Name = \"nginx:1.17.6\",\n }));\n var digest = Output.Create(Docker.GetRemoteImage.InvokeAsync(new Docker.GetRemoteImageArgs\n {\n Name = \"nginx@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\",\n }));\n var tagAndDigest = Output.Create(Docker.GetRemoteImage.InvokeAsync(new Docker.GetRemoteImageArgs\n {\n Name = \"nginx:1.19.1@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\",\n }));\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-docker/sdk/v3/go/docker\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := docker.LookupRemoteImage(ctx, &docker.LookupRemoteImageArgs{\n\t\t\tName: \"nginx\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = docker.LookupRemoteImage(ctx, &docker.LookupRemoteImageArgs{\n\t\t\tName: \"nginx:1.17.6\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = docker.LookupRemoteImage(ctx, &docker.LookupRemoteImageArgs{\n\t\t\tName: \"nginx@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = docker.LookupRemoteImage(ctx, &docker.LookupRemoteImageArgs{\n\t\t\tName: \"nginx:1.19.1@sha256:36b74457bccb56fbf8b05f79c85569501b721d4db813b684391d63e02287c0b2\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n\n<!-- schema generated by tfplugindocs -->\n{{% /example %}}\n{{% /examples %}}\n## Schema\n\n### Required\n\n- **name** (String) The name of the Docker image, including any tags or SHA256 repo digests.\n\n### Optional\n\n- **id** (String) The ID of this resource.\n\n### Read-Only\n\n- **repo_digest** (String) The image sha256 digest in the form of `repo[:tag]@sha256:<hash>`. It may be empty in the edge case where the local image was pulled from a repo, tagged locally, and then referred to in the data source by that local name/tag.\n",
"inputs": {
"description": "A collection of arguments for invoking getRemoteImage.\n",
"properties": {
"name": {
"type": "string"
}
},
"type": "object",
"required": [
"name"
]
},
"outputs": {
"description": "A collection of values returned by getRemoteImage.\n",
"properties": {
"id": {
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
"name": {
"type": "string"
},
"repoDigest": {
"type": "string"
}
},
"type": "object",
"required": [
"name",
"repoDigest",
"id"
]
}
}
},
"language": {
"csharp": {
"compatibility": "tfbridge20",
"namespaces": {
"docker": "Docker"
},
"packageReferences": {
"Pulumi": "3.*",
"Semver": "2.0.6"
}
},
"go": {
"generateResourceContainerTypes": true,
"importBasePath": "github.com/pulumi/pulumi-docker/sdk/v3/go/docker"
},
"nodejs": {
"compatibility": "tfbridge20",
"dependencies": {
"@pulumi/pulumi": "^3.0.0",
"semver": "^5.4.0"
},
"devDependencies": {
"@types/node": "^10.0.0",
"@types/semver": "^5.4.0"
},
"disableUnionOutputTypes": true,
"packageDescription": "A Pulumi package for interacting with Docker in Pulumi programs",
"packageName": "",
"readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/terraform-providers/terraform-provider-docker)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi/pulumi-docker` repo](https://github.com/pulumi/pulumi-docker/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-providers/terraform-provider-docker` repo](https://github.com/terraform-providers/terraform-provider-docker/issues).",
"typescriptVersion": ""
},
"python": {
"compatibility": "tfbridge20",
"readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/terraform-providers/terraform-provider-docker)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi/pulumi-docker` repo](https://github.com/pulumi/pulumi-docker/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-providers/terraform-provider-docker` repo](https://github.com/terraform-providers/terraform-provider-docker/issues).",
"requires": {
"pulumi": ">=3.0.0,<4.0.0"
}
}
},
"version": "3.1.0"
}