2.7 KiB
| layout | page_title | sidebar_current | description |
|---|---|---|---|
| docker | Docker: docker_container | docs-docker-resource-container | Manages the lifecycle of a Docker container. |
docker_container
Manages the lifecycle of a Docker container.
Example Usage
# Start a container
resource "docker_container" "ubuntu" {
name = "foo"
image = "${docker_image.ubuntu.latest}"
}
# Find the latest Ubuntu precise image.
resource "docker_image" "ubuntu" {
image = "ubuntu:precise"
}
Argument Reference
The following arguments are supported:
-
name- (Required, string) The name of the Docker container. -
image- (Required, string) The ID of the image to back this container. The easiest way to get this value is to use thedocker_imageresource as is shown in the example above. -
command- (Optional, list of strings) The command to use to start the container. -
dns- (Optional, set of strings) Set of DNS servers. -
env- (Optional, set of strings) Environmental variables to set. -
links- (Optional, set of strings) Set of links for link based connectivity between containers that are running on the same host. -
hostname- (Optional, string) Hostname of the container. -
domainname- (Optional, string) Domain name of the container. -
must_run- (Optional, bool) If true, then the Docker container will be kept running. If false, then as long as the container exists, Terraform assumes it is successful. -
ports- (Optional) See Ports below for details. -
publish_all_ports- (Optional, bool) Publish all ports of the container. -
volumes- (Optional) See Volumes below for details.
Ports
ports is a block within the configuration that can be repeated to specify
the port mappings of the container. Each ports block supports
the following:
internal- (Required, int) Port within the container.external- (Required, int) Port exposed out of the container.ip- (Optional, string) IP address/mask that can access this port.protocol- (Optional, string) Protocol that can be used over this port, defaults to TCP.
Volumes
volumes is a block within the configuration that can be repeated to specify
the volumes attached to a container. Each volumes block supports
the following:
from_container- (Optional, string) The container where the volume is coming from.container_path- (Optional, string) The path in the container where the volume will be mounted.host_path- (Optional, string) The path on the host where the volume is coming from.read_only- (Optinal, bool) If true, this volume will be readonly. Defaults to false.