Copyright | (c) 2013-2015 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
- Service Configuration
- Errors
- AgentUpdateStatus
- DesiredStatus
- LogDriver
- SortOrder
- TaskDefinitionStatus
- TransportProtocol
- UlimitName
- Attribute
- Cluster
- Container
- ContainerDefinition
- ContainerInstance
- ContainerOverride
- ContainerService
- Deployment
- Failure
- HostEntry
- HostVolumeProperties
- KeyValuePair
- LoadBalancer
- LogConfiguration
- MountPoint
- NetworkBinding
- PortMapping
- Resource
- ServiceEvent
- Task
- TaskDefinition
- TaskOverride
- Ulimit
- VersionInfo
- Volume
- VolumeFrom
- eCS :: Service
- _InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError
- _ServerException :: AsError a => Getting (First ServiceError) a ServiceError
- _ClusterContainsServicesException :: AsError a => Getting (First ServiceError) a ServiceError
- _ClusterContainsContainerInstancesException :: AsError a => Getting (First ServiceError) a ServiceError
- _ServiceNotActiveException :: AsError a => Getting (First ServiceError) a ServiceError
- _ClusterNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
- _NoUpdateAvailableException :: AsError a => Getting (First ServiceError) a ServiceError
- _ServiceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
- _MissingVersionException :: AsError a => Getting (First ServiceError) a ServiceError
- _UpdateInProgressException :: AsError a => Getting (First ServiceError) a ServiceError
- _ClientException :: AsError a => Getting (First ServiceError) a ServiceError
- data AgentUpdateStatus
- data DesiredStatus
- data LogDriver
- data SortOrder
- data TaskDefinitionStatus
- data TransportProtocol
- data UlimitName
- data Attribute
- attribute :: Text -> Attribute
- aValue :: Lens' Attribute (Maybe Text)
- aName :: Lens' Attribute Text
- data Cluster
- cluster :: Cluster
- cStatus :: Lens' Cluster (Maybe Text)
- cClusterARN :: Lens' Cluster (Maybe Text)
- cRunningTasksCount :: Lens' Cluster (Maybe Int)
- cRegisteredContainerInstancesCount :: Lens' Cluster (Maybe Int)
- cPendingTasksCount :: Lens' Cluster (Maybe Int)
- cClusterName :: Lens' Cluster (Maybe Text)
- cActiveServicesCount :: Lens' Cluster (Maybe Int)
- data Container
- container :: Container
- cNetworkBindings :: Lens' Container [NetworkBinding]
- cContainerARN :: Lens' Container (Maybe Text)
- cTaskARN :: Lens' Container (Maybe Text)
- cLastStatus :: Lens' Container (Maybe Text)
- cReason :: Lens' Container (Maybe Text)
- cName :: Lens' Container (Maybe Text)
- cExitCode :: Lens' Container (Maybe Int)
- data ContainerDefinition
- containerDefinition :: ContainerDefinition
- cdImage :: Lens' ContainerDefinition (Maybe Text)
- cdCommand :: Lens' ContainerDefinition [Text]
- cdHostname :: Lens' ContainerDefinition (Maybe Text)
- cdDockerSecurityOptions :: Lens' ContainerDefinition [Text]
- cdDisableNetworking :: Lens' ContainerDefinition (Maybe Bool)
- cdVolumesFrom :: Lens' ContainerDefinition [VolumeFrom]
- cdEnvironment :: Lens' ContainerDefinition [KeyValuePair]
- cdEntryPoint :: Lens' ContainerDefinition [Text]
- cdWorkingDirectory :: Lens' ContainerDefinition (Maybe Text)
- cdUlimits :: Lens' ContainerDefinition [Ulimit]
- cdPrivileged :: Lens' ContainerDefinition (Maybe Bool)
- cdPortMappings :: Lens' ContainerDefinition [PortMapping]
- cdDockerLabels :: Lens' ContainerDefinition (HashMap Text Text)
- cdExtraHosts :: Lens' ContainerDefinition [HostEntry]
- cdMemory :: Lens' ContainerDefinition (Maybe Int)
- cdUser :: Lens' ContainerDefinition (Maybe Text)
- cdDnsSearchDomains :: Lens' ContainerDefinition [Text]
- cdLogConfiguration :: Lens' ContainerDefinition (Maybe LogConfiguration)
- cdName :: Lens' ContainerDefinition (Maybe Text)
- cdDnsServers :: Lens' ContainerDefinition [Text]
- cdMountPoints :: Lens' ContainerDefinition [MountPoint]
- cdLinks :: Lens' ContainerDefinition [Text]
- cdReadonlyRootFilesystem :: Lens' ContainerDefinition (Maybe Bool)
- cdEssential :: Lens' ContainerDefinition (Maybe Bool)
- cdCpu :: Lens' ContainerDefinition (Maybe Int)
- data ContainerInstance
- containerInstance :: ContainerInstance
- ciStatus :: Lens' ContainerInstance (Maybe Text)
- ciRunningTasksCount :: Lens' ContainerInstance (Maybe Int)
- ciRemainingResources :: Lens' ContainerInstance [Resource]
- ciEc2InstanceId :: Lens' ContainerInstance (Maybe Text)
- ciContainerInstanceARN :: Lens' ContainerInstance (Maybe Text)
- ciAgentConnected :: Lens' ContainerInstance (Maybe Bool)
- ciVersionInfo :: Lens' ContainerInstance (Maybe VersionInfo)
- ciAgentUpdateStatus :: Lens' ContainerInstance (Maybe AgentUpdateStatus)
- ciAttributes :: Lens' ContainerInstance [Attribute]
- ciPendingTasksCount :: Lens' ContainerInstance (Maybe Int)
- ciRegisteredResources :: Lens' ContainerInstance [Resource]
- data ContainerOverride
- containerOverride :: ContainerOverride
- coCommand :: Lens' ContainerOverride [Text]
- coEnvironment :: Lens' ContainerOverride [KeyValuePair]
- coName :: Lens' ContainerOverride (Maybe Text)
- data ContainerService
- containerService :: ContainerService
- csRunningCount :: Lens' ContainerService (Maybe Int)
- csStatus :: Lens' ContainerService (Maybe Text)
- csClusterARN :: Lens' ContainerService (Maybe Text)
- csDesiredCount :: Lens' ContainerService (Maybe Int)
- csLoadBalancers :: Lens' ContainerService [LoadBalancer]
- csPendingCount :: Lens' ContainerService (Maybe Int)
- csEvents :: Lens' ContainerService [ServiceEvent]
- csDeployments :: Lens' ContainerService [Deployment]
- csServiceName :: Lens' ContainerService (Maybe Text)
- csServiceARN :: Lens' ContainerService (Maybe Text)
- csTaskDefinition :: Lens' ContainerService (Maybe Text)
- csRoleARN :: Lens' ContainerService (Maybe Text)
- data Deployment
- deployment :: Deployment
- dRunningCount :: Lens' Deployment (Maybe Int)
- dStatus :: Lens' Deployment (Maybe Text)
- dCreatedAt :: Lens' Deployment (Maybe UTCTime)
- dDesiredCount :: Lens' Deployment (Maybe Int)
- dPendingCount :: Lens' Deployment (Maybe Int)
- dId :: Lens' Deployment (Maybe Text)
- dUpdatedAt :: Lens' Deployment (Maybe UTCTime)
- dTaskDefinition :: Lens' Deployment (Maybe Text)
- data Failure
- failure :: Failure
- fArn :: Lens' Failure (Maybe Text)
- fReason :: Lens' Failure (Maybe Text)
- data HostEntry
- hostEntry :: Text -> Text -> HostEntry
- heHostname :: Lens' HostEntry Text
- heIpAddress :: Lens' HostEntry Text
- data HostVolumeProperties
- hostVolumeProperties :: HostVolumeProperties
- hvpSourcePath :: Lens' HostVolumeProperties (Maybe Text)
- data KeyValuePair
- keyValuePair :: KeyValuePair
- kvpValue :: Lens' KeyValuePair (Maybe Text)
- kvpName :: Lens' KeyValuePair (Maybe Text)
- data LoadBalancer
- loadBalancer :: LoadBalancer
- lbLoadBalancerName :: Lens' LoadBalancer (Maybe Text)
- lbContainerName :: Lens' LoadBalancer (Maybe Text)
- lbContainerPort :: Lens' LoadBalancer (Maybe Int)
- data LogConfiguration
- logConfiguration :: LogDriver -> LogConfiguration
- lcOptions :: Lens' LogConfiguration (HashMap Text Text)
- lcLogDriver :: Lens' LogConfiguration LogDriver
- data MountPoint
- mountPoint :: MountPoint
- mpContainerPath :: Lens' MountPoint (Maybe Text)
- mpSourceVolume :: Lens' MountPoint (Maybe Text)
- mpReadOnly :: Lens' MountPoint (Maybe Bool)
- data NetworkBinding
- networkBinding :: NetworkBinding
- nbBindIP :: Lens' NetworkBinding (Maybe Text)
- nbProtocol :: Lens' NetworkBinding (Maybe TransportProtocol)
- nbHostPort :: Lens' NetworkBinding (Maybe Int)
- nbContainerPort :: Lens' NetworkBinding (Maybe Int)
- data PortMapping
- portMapping :: PortMapping
- pmProtocol :: Lens' PortMapping (Maybe TransportProtocol)
- pmHostPort :: Lens' PortMapping (Maybe Int)
- pmContainerPort :: Lens' PortMapping (Maybe Int)
- data Resource
- resource :: Resource
- rStringSetValue :: Lens' Resource [Text]
- rIntegerValue :: Lens' Resource (Maybe Int)
- rDoubleValue :: Lens' Resource (Maybe Double)
- rLongValue :: Lens' Resource (Maybe Integer)
- rName :: Lens' Resource (Maybe Text)
- rType :: Lens' Resource (Maybe Text)
- data ServiceEvent
- serviceEvent :: ServiceEvent
- seCreatedAt :: Lens' ServiceEvent (Maybe UTCTime)
- seId :: Lens' ServiceEvent (Maybe Text)
- seMessage :: Lens' ServiceEvent (Maybe Text)
- data Task
- task :: Task
- tDesiredStatus :: Lens' Task (Maybe Text)
- tOverrides :: Lens' Task (Maybe TaskOverride)
- tClusterARN :: Lens' Task (Maybe Text)
- tTaskARN :: Lens' Task (Maybe Text)
- tContainerInstanceARN :: Lens' Task (Maybe Text)
- tLastStatus :: Lens' Task (Maybe Text)
- tContainers :: Lens' Task [Container]
- tStartedBy :: Lens' Task (Maybe Text)
- tTaskDefinitionARN :: Lens' Task (Maybe Text)
- data TaskDefinition
- taskDefinition :: TaskDefinition
- tdStatus :: Lens' TaskDefinition (Maybe TaskDefinitionStatus)
- tdFamily :: Lens' TaskDefinition (Maybe Text)
- tdContainerDefinitions :: Lens' TaskDefinition [ContainerDefinition]
- tdTaskDefinitionARN :: Lens' TaskDefinition (Maybe Text)
- tdRevision :: Lens' TaskDefinition (Maybe Int)
- tdVolumes :: Lens' TaskDefinition [Volume]
- tdRequiresAttributes :: Lens' TaskDefinition [Attribute]
- data TaskOverride
- taskOverride :: TaskOverride
- toContainerOverrides :: Lens' TaskOverride [ContainerOverride]
- data Ulimit
- ulimit :: UlimitName -> Int -> Int -> Ulimit
- uName :: Lens' Ulimit UlimitName
- uSoftLimit :: Lens' Ulimit Int
- uHardLimit :: Lens' Ulimit Int
- data VersionInfo
- versionInfo :: VersionInfo
- viAgentHash :: Lens' VersionInfo (Maybe Text)
- viAgentVersion :: Lens' VersionInfo (Maybe Text)
- viDockerVersion :: Lens' VersionInfo (Maybe Text)
- data Volume
- volume :: Volume
- vName :: Lens' Volume (Maybe Text)
- vHost :: Lens' Volume (Maybe HostVolumeProperties)
- data VolumeFrom
- volumeFrom :: VolumeFrom
- vfSourceContainer :: Lens' VolumeFrom (Maybe Text)
- vfReadOnly :: Lens' VolumeFrom (Maybe Bool)
Service Configuration
API version '2014-11-13' of the Amazon EC2 Container Service SDK configuration.
Errors
_InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError Source
The specified parameter is invalid. Review the available parameters for the API request.
_ServerException :: AsError a => Getting (First ServiceError) a ServiceError Source
These errors are usually caused by a server issue.
_ClusterContainsServicesException :: AsError a => Getting (First ServiceError) a ServiceError Source
You cannot delete a cluster that contains services. You must first update the service to reduce its desired task count to 0 and then delete the service. For more information, see UpdateService and DeleteService.
_ClusterContainsContainerInstancesException :: AsError a => Getting (First ServiceError) a ServiceError Source
You cannot delete a cluster that has registered container instances. You must first deregister the container instances before you can delete the cluster. For more information, see DeregisterContainerInstance.
_ServiceNotActiveException :: AsError a => Getting (First ServiceError) a ServiceError Source
The specified service is not active. You cannot update a service that is not active. If you have previously deleted a service, you can re-create it with CreateService.
_ClusterNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source
The specified cluster could not be found. You can view your available clusters with ListClusters. Amazon ECS clusters are region-specific.
_NoUpdateAvailableException :: AsError a => Getting (First ServiceError) a ServiceError Source
There is no update available for this Amazon ECS container agent. This could be because the agent is already running the latest version, or it is so old that there is no update path to the current version.
_ServiceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source
The specified service could not be found. You can view your available services with ListServices. Amazon ECS services are cluster-specific and region-specific.
_MissingVersionException :: AsError a => Getting (First ServiceError) a ServiceError Source
Amazon ECS is unable to determine the current version of the Amazon ECS container agent on the container instance and does not have enough information to proceed with an update. This could be because the agent running on the container instance is an older or custom version that does not use our version information.
_UpdateInProgressException :: AsError a => Getting (First ServiceError) a ServiceError Source
There is already a current Amazon ECS container agent update in progress
on the specified container instance. If the container agent becomes
disconnected while it is in a transitional stage, such as PENDING
or
STAGING
, the update process can get stuck in that state. However, when
the agent reconnects, it resumes where it stopped previously.
_ClientException :: AsError a => Getting (First ServiceError) a ServiceError Source
These errors are usually caused by a client action, such as using an action or resource on behalf of a user that doesn't have permission to use the action or resource, or specifying an identifier that is not valid.
AgentUpdateStatus
data AgentUpdateStatus Source
DesiredStatus
data DesiredStatus Source
LogDriver
SortOrder
TaskDefinitionStatus
data TaskDefinitionStatus Source
TransportProtocol
data TransportProtocol Source
UlimitName
data UlimitName Source
Attribute
The attributes applicable to a container instance when it is registered.
See: attribute
smart constructor.
Cluster
A regional grouping of one or more container instances on which you can run task requests. Each account receives a default cluster the first time you use the Amazon ECS service, but you may also create other clusters. Clusters may contain more than one instance type simultaneously.
See: cluster
smart constructor.
Creates a value of Cluster
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
cStatus :: Lens' Cluster (Maybe Text) Source
The status of the cluster. The valid values are ACTIVE
or INACTIVE
.
ACTIVE
indicates that you can register container instances with the
cluster and the associated instances can accept tasks.
cClusterARN :: Lens' Cluster (Maybe Text) Source
The Amazon Resource Name (ARN) that identifies the cluster. The ARN
contains the 'arn:aws:ecs' namespace, followed by the region of the
cluster, the AWS account ID of the cluster owner, the cluster
namespace, and then the cluster name. For example,
arn:aws:ecs:region:012345678910:cluster/test.
cRunningTasksCount :: Lens' Cluster (Maybe Int) Source
The number of tasks in the cluster that are in the RUNNING
state.
cRegisteredContainerInstancesCount :: Lens' Cluster (Maybe Int) Source
The number of container instances registered into the cluster.
cPendingTasksCount :: Lens' Cluster (Maybe Int) Source
The number of tasks in the cluster that are in the PENDING
state.
cClusterName :: Lens' Cluster (Maybe Text) Source
A user-generated string that you use to identify your cluster.
cActiveServicesCount :: Lens' Cluster (Maybe Int) Source
The number of services that are running on the cluster in an ACTIVE
state. You can view these services with ListServices.
Container
A Docker container that is part of a task.
See: container
smart constructor.
Creates a value of Container
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
cNetworkBindings :: Lens' Container [NetworkBinding] Source
The network bindings associated with the container.
cContainerARN :: Lens' Container (Maybe Text) Source
The Amazon Resource Name (ARN) of the container.
cReason :: Lens' Container (Maybe Text) Source
A short (255 max characters) human-readable string to provide additional detail about a running or stopped container.
ContainerDefinition
data ContainerDefinition Source
Container definitions are used in task definitions to describe the different containers that are launched as part of a task.
See: containerDefinition
smart constructor.
containerDefinition :: ContainerDefinition Source
Creates a value of ContainerDefinition
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
cdImage
cdCommand
cdHostname
cdDockerSecurityOptions
cdDisableNetworking
cdVolumesFrom
cdEnvironment
cdEntryPoint
cdWorkingDirectory
cdUlimits
cdPrivileged
cdPortMappings
cdDockerLabels
cdExtraHosts
cdMemory
cdUser
cdDnsSearchDomains
cdLogConfiguration
cdName
cdDnsServers
cdMountPoints
cdLinks
cdReadonlyRootFilesystem
cdEssential
cdCpu
cdImage :: Lens' ContainerDefinition (Maybe Text) Source
The image used to start a container. This string is passed directly to
the Docker daemon. Images in the Docker Hub registry are available by
default. Other repositories are specified with
'repository-url\/image:tag'. Up to 255 letters (uppercase and
lowercase), numbers, hyphens, underscores, colons, periods, forward
slashes, and number signs are allowed. This parameter maps to Image
in
the
Create a container
section of the
Docker Remote API
and the IMAGE
parameter of
docker run.
cdCommand :: Lens' ContainerDefinition [Text] Source
The command that is passed to the container. This parameter maps to
Cmd
in the
Create a container
section of the
Docker Remote API
and the COMMAND
parameter to
docker run. For
more information, see https://docs.docker.com/reference/builder/#cmd.
cdHostname :: Lens' ContainerDefinition (Maybe Text) Source
The hostname to use for your container. This parameter maps to
Hostname
in the
Create a container
section of the
Docker Remote API
and the '--hostname' option to
docker run.
cdDockerSecurityOptions :: Lens' ContainerDefinition [Text] Source
A list of strings to provide custom labels for SELinux and AppArmor
multi-level security systems. This parameter maps to SecurityOpt
in
the
Create a container
section of the
Docker Remote API
and the '--security-opt' option to
docker run.
The Amazon ECS container agent running on a container instance must register with the 'ECS_SELINUX_CAPABLE=true' or 'ECS_APPARMOR_CAPABLE=true' environment variables before containers placed on that instance can use these security options. For more information, see Amazon ECS Container Agent Configuration in the Amazon EC2 Container Service Developer Guide.
cdDisableNetworking :: Lens' ContainerDefinition (Maybe Bool) Source
When this parameter is true, networking is disabled within the
container. This parameter maps to NetworkDisabled
in the
Create a container
section of the
Docker Remote API.
cdVolumesFrom :: Lens' ContainerDefinition [VolumeFrom] Source
Data volumes to mount from another container. This parameter maps to
VolumesFrom
in the
Create a container
section of the
Docker Remote API
and the '--volumes-from' option to
docker run.
cdEnvironment :: Lens' ContainerDefinition [KeyValuePair] Source
The environment variables to pass to a container. This parameter maps to
Env
in the
Create a container
section of the
Docker Remote API
and the '--env' option to
docker run.
cdEntryPoint :: Lens' ContainerDefinition [Text] Source
Early versions of the Amazon ECS container agent do not properly handle
entryPoint
parameters. If you have problems using entryPoint
, update
your container agent or enter your commands and arguments as command
array items instead.
The entry point that is passed to the container. This parameter maps to
Entrypoint
in the
Create a container
section of the
Docker Remote API
and the '--entrypoint' option to
docker run. For
more information, see
https://docs.docker.com/reference/builder/#entrypoint.
cdWorkingDirectory :: Lens' ContainerDefinition (Maybe Text) Source
The working directory in which to run commands inside the container.
This parameter maps to WorkingDir
in the
Create a container
section of the
Docker Remote API
and the '--workdir' option to
docker run.
cdUlimits :: Lens' ContainerDefinition [Ulimit] Source
A list of ulimits
to set in the container. This parameter maps to
Ulimits
in the
Create a container
section of the
Docker Remote API
and the '--ulimit' option to
docker run. Valid
naming values are displayed in the Ulimit data type. This parameter
requires version 1.18 of the Docker Remote API or greater on your
container instance. To check the Docker Remote API version on your
container instance, log into your container instance and run the
following command: 'sudo docker version | grep "Server API version"'
cdPrivileged :: Lens' ContainerDefinition (Maybe Bool) Source
When this parameter is true, the container is given elevated privileges
on the host container instance (similar to the root
user). This
parameter maps to Privileged
in the
Create a container
section of the
Docker Remote API
and the '--privileged' option to
docker run.
cdPortMappings :: Lens' ContainerDefinition [PortMapping] Source
The list of port mappings for the container. Port mappings allow
containers to access ports on the host container instance to send or
receive traffic. This parameter maps to PortBindings
in the
Create a container
section of the
Docker Remote API
and the '--publish' option to
docker run.
cdDockerLabels :: Lens' ContainerDefinition (HashMap Text Text) Source
A key/value map of labels to add to the container. This parameter maps
to Labels
in the
Create a container
section of the
Docker Remote API
and the '--label' option to
docker run. This
parameter requires version 1.18 of the Docker Remote API or greater on
your container instance. To check the Docker Remote API version on your
container instance, log into your container instance and run the
following command: 'sudo docker version | grep "Server API version"'
cdExtraHosts :: Lens' ContainerDefinition [HostEntry] Source
A list of hostnames and IP address mappings to append to the
'\/etc\/hosts' file on the container. This parameter maps to
ExtraHosts
in the
Create a container
section of the
Docker Remote API
and the '--add-host' option to
docker run.
cdMemory :: Lens' ContainerDefinition (Maybe Int) Source
The number of MiB of memory reserved for the container. If your
container attempts to exceed the memory allocated here, the container is
killed. This parameter maps to Memory
in the
Create a container
section of the
Docker Remote API
and the '--memory' option to
docker run.
cdUser :: Lens' ContainerDefinition (Maybe Text) Source
The user name to use inside the container. This parameter maps to User
in the
Create a container
section of the
Docker Remote API
and the '--user' option to
docker run.
cdDnsSearchDomains :: Lens' ContainerDefinition [Text] Source
A list of DNS search domains that are presented to the container. This
parameter maps to DnsSearch
in the
Create a container
section of the
Docker Remote API
and the '--dns-search' option to
docker run.
cdLogConfiguration :: Lens' ContainerDefinition (Maybe LogConfiguration) Source
The log configuration specification for the container. This parameter
maps to LogConfig
in the
Create a container
section of the
Docker Remote API
and the '--log-driver' option to
docker run. Valid
log drivers are displayed in the LogConfiguration data type. This
parameter requires version 1.18 of the Docker Remote API or greater on
your container instance. To check the Docker Remote API version on your
container instance, log into your container instance and run the
following command: 'sudo docker version | grep "Server API version"'
The Amazon ECS container agent running on a container instance must
register the logging drivers available on that instance with the
ECS_AVAILABLE_LOGGING_DRIVERS
environment variable before containers
placed on that instance can use these log configuration options. For
more information, see
Amazon ECS Container Agent Configuration
in the Amazon EC2 Container Service Developer Guide.
cdName :: Lens' ContainerDefinition (Maybe Text) Source
The name of a container. If you are linking multiple containers together
in a task definition, the name
of one container can be entered in the
links
of another container to connect the containers. Up to 255
letters (uppercase and lowercase), numbers, hyphens, and underscores are
allowed. This parameter maps to name
in the
Create a container
section of the
Docker Remote API
and the '--name' option to
docker run.
cdDnsServers :: Lens' ContainerDefinition [Text] Source
A list of DNS servers that are presented to the container. This
parameter maps to Dns
in the
Create a container
section of the
Docker Remote API
and the '--dns' option to
docker run.
cdMountPoints :: Lens' ContainerDefinition [MountPoint] Source
The mount points for data volumes in your container. This parameter maps
to Volumes
in the
Create a container
section of the
Docker Remote API
and the '--volume' option to
docker run.
cdLinks :: Lens' ContainerDefinition [Text] Source
The link
parameter allows containers to communicate with each other
without the need for port mappings, using the name
parameter and
optionally, an alias
for the link. This construct is analogous to
'name:alias' in Docker links. Up to 255 letters (uppercase and
lowercase), numbers, hyphens, and underscores are allowed for each
name
and alias
. For more information on linking Docker containers,
see https://docs.docker.com/userguide/dockerlinks/. This parameter
maps to Links
in the
Create a container
section of the
Docker Remote API
and the '--link' option to
'docker run'.
Containers that are collocated on a single container instance may be able to communicate with each other without requiring links or host port mappings. Network isolation is achieved on the container instance using security groups and VPC settings.
cdReadonlyRootFilesystem :: Lens' ContainerDefinition (Maybe Bool) Source
When this parameter is true, the container is given read-only access to
its root file system. This parameter maps to ReadonlyRootfs
in the
Create a container
section of the
Docker Remote API
and the '--read-only' option to 'docker run'.
cdEssential :: Lens' ContainerDefinition (Maybe Bool) Source
If the essential
parameter of a container is marked as true
, the
failure of that container stops the task. If the essential
parameter
of a container is marked as false
, then its failure does not affect
the rest of the containers in a task. If this parameter is omitted, a
container is assumed to be essential.
All tasks must have at least one essential container.
cdCpu :: Lens' ContainerDefinition (Maybe Int) Source
The number of cpu
units reserved for the container. A container
instance has 1,024 cpu
units for every CPU core. This parameter
specifies the minimum amount of CPU to reserve for a container, and
containers share unallocated CPU units with other containers on the
instance with the same ratio as their allocated amount. This parameter
maps to CpuShares
in the
Create a container
section of the
Docker Remote API
and the '--cpu-shares' option to
docker run.
You can determine the number of CPU units that are available per EC2 instance type by multiplying the vCPUs listed for that instance type on the Amazon EC2 Instances detail page by 1,024.
For example, if you run a single-container task on a single-core instance type with 512 CPU units specified for that container, and that is the only task running on the container instance, that container could use the full 1,024 CPU unit share at any given time. However, if you launched another copy of the same task on that container instance, each task would be guaranteed a minimum of 512 CPU units when needed, and each container could float to higher CPU usage if the other container was not using it, but if both tasks were 100% active all of the time, they would be limited to 512 CPU units.
The Docker daemon on the container instance uses the CPU value to calculate the relative CPU share ratios for running containers. For more information, see CPU share constraint in the Docker documentation. The minimum valid CPU share value that the Linux kernel allows is 2; however, the CPU parameter is not required, and you can use CPU values below 2 in your container definitions. For CPU values below 2 (including null), the behavior varies based on your Amazon ECS container agent version:
- Agent versions less than or equal to 1.1.0: Null and zero CPU values are passed to Docker as 0, which Docker then converts to 1,024 CPU shares. CPU values of 1 are passed to Docker as 1, which the Linux kernel converts to 2 CPU shares.
- Agent versions greater than or equal to 1.2.0: Null, zero, and CPU values of 1 are passed to Docker as 2.
ContainerInstance
data ContainerInstance Source
An EC2 instance that is running the Amazon ECS agent and has been registered with a cluster.
See: containerInstance
smart constructor.
containerInstance :: ContainerInstance Source
Creates a value of ContainerInstance
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
ciStatus :: Lens' ContainerInstance (Maybe Text) Source
The status of the container instance. The valid values are ACTIVE
or
INACTIVE
. ACTIVE
indicates that the container instance can accept
tasks.
ciRunningTasksCount :: Lens' ContainerInstance (Maybe Int) Source
The number of tasks on the container instance that are in the RUNNING
status.
ciRemainingResources :: Lens' ContainerInstance [Resource] Source
The remaining resources of the container instance that are available for new tasks.
ciEc2InstanceId :: Lens' ContainerInstance (Maybe Text) Source
The EC2 instance ID of the container instance.
ciContainerInstanceARN :: Lens' ContainerInstance (Maybe Text) Source
The Amazon Resource Name (ARN) of the container instance. The ARN contains the 'arn:aws:ecs' namespace, followed by the region of the container instance, the AWS account ID of the container instance owner, the 'container-instance' namespace, and then the container instance ID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID.
ciAgentConnected :: Lens' ContainerInstance (Maybe Bool) Source
This parameter returns true
if the agent is actually connected to
Amazon ECS. Registered instances with an agent that may be unhealthy or
stopped return false
, and instances without a connected agent cannot
accept placement requests.
ciVersionInfo :: Lens' ContainerInstance (Maybe VersionInfo) Source
The version information for the Amazon ECS container agent and Docker daemon running on the container instance.
ciAgentUpdateStatus :: Lens' ContainerInstance (Maybe AgentUpdateStatus) Source
The status of the most recent agent update. If an update has never been
requested, this value is NULL
.
ciAttributes :: Lens' ContainerInstance [Attribute] Source
The attributes set for the container instance by the Amazon ECS container agent at instance registration.
ciPendingTasksCount :: Lens' ContainerInstance (Maybe Int) Source
The number of tasks on the container instance that are in the PENDING
status.
ciRegisteredResources :: Lens' ContainerInstance [Resource] Source
The registered resources on the container instance that are in use by current tasks.
ContainerOverride
data ContainerOverride Source
The overrides that should be sent to a container.
See: containerOverride
smart constructor.
containerOverride :: ContainerOverride Source
Creates a value of ContainerOverride
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
coCommand :: Lens' ContainerOverride [Text] Source
The command to send to the container that overrides the default command from the Docker image or the task definition.
coEnvironment :: Lens' ContainerOverride [KeyValuePair] Source
The environment variables to send to the container. You can add new environment variables, which are added to the container at launch, or you can override the existing environment variables from the Docker image or the task definition.
coName :: Lens' ContainerOverride (Maybe Text) Source
The name of the container that receives the override.
ContainerService
data ContainerService Source
Details on a service within a cluster
See: containerService
smart constructor.
containerService :: ContainerService Source
Creates a value of ContainerService
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
csRunningCount :: Lens' ContainerService (Maybe Int) Source
The number of tasks in the cluster that are in the RUNNING
state.
csStatus :: Lens' ContainerService (Maybe Text) Source
The status of the service. The valid values are ACTIVE
, DRAINING
, or
INACTIVE
.
csClusterARN :: Lens' ContainerService (Maybe Text) Source
The Amazon Resource Name (ARN) of the of the cluster that hosts the service.
csDesiredCount :: Lens' ContainerService (Maybe Int) Source
The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.
csLoadBalancers :: Lens' ContainerService [LoadBalancer] Source
A list of load balancer objects, containing the load balancer name, the container name (as it appears in a container definition), and the container port to access from the load balancer.
csPendingCount :: Lens' ContainerService (Maybe Int) Source
The number of tasks in the cluster that are in the PENDING
state.
csEvents :: Lens' ContainerService [ServiceEvent] Source
The event stream for your service. A maximum of 100 of the latest events are displayed.
csDeployments :: Lens' ContainerService [Deployment] Source
The current state of deployments for the service.
csServiceName :: Lens' ContainerService (Maybe Text) Source
A user-generated string that you can use to identify your service.
csServiceARN :: Lens' ContainerService (Maybe Text) Source
The Amazon Resource Name (ARN) that identifies the service. The ARN
contains the 'arn:aws:ecs' namespace, followed by the region of the
service, the AWS account ID of the service owner, the service
namespace, and then the service name. For example,
arn:aws:ecs:region:012345678910:service/my-service.
csTaskDefinition :: Lens' ContainerService (Maybe Text) Source
The task definition to use for tasks in the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.
csRoleARN :: Lens' ContainerService (Maybe Text) Source
The Amazon Resource Name (ARN) of the IAM role associated with the service that allows the Amazon ECS container agent to register container instances with a load balancer.
Deployment
data Deployment Source
The details of an Amazon ECS service deployment.
See: deployment
smart constructor.
deployment :: Deployment Source
Creates a value of Deployment
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
dRunningCount :: Lens' Deployment (Maybe Int) Source
The number of tasks in the deployment that are in the RUNNING
status.
dStatus :: Lens' Deployment (Maybe Text) Source
The status of the deployment. Valid values are PRIMARY
(for the most
recent deployment), ACTIVE
(for previous deployments that still have
tasks running, but are being replaced with the PRIMARY
deployment),
and INACTIVE
(for deployments that have been completely replaced).
dCreatedAt :: Lens' Deployment (Maybe UTCTime) Source
The Unix time in seconds and milliseconds when the service was created.
dDesiredCount :: Lens' Deployment (Maybe Int) Source
The most recent desired count of tasks that was specified for the service to deploy or maintain.
dPendingCount :: Lens' Deployment (Maybe Int) Source
The number of tasks in the deployment that are in the PENDING
status.
dUpdatedAt :: Lens' Deployment (Maybe UTCTime) Source
The Unix time in seconds and milliseconds when the service was last updated.
dTaskDefinition :: Lens' Deployment (Maybe Text) Source
The most recent task definition that was specified for the service to use.
Failure
A failed resource.
See: failure
smart constructor.
HostEntry
Hostnames and IP address entries that are added to the '\/etc\/hosts'
file of a container via the extraHosts
parameter of its
ContainerDefinition.
See: hostEntry
smart constructor.
Creates a value of HostEntry
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
heHostname :: Lens' HostEntry Text Source
The hostname to use in the '\/etc\/hosts' entry.
heIpAddress :: Lens' HostEntry Text Source
The IP address to use in the '\/etc\/hosts' entry.
HostVolumeProperties
data HostVolumeProperties Source
Details on a container instance host volume.
See: hostVolumeProperties
smart constructor.
hostVolumeProperties :: HostVolumeProperties Source
Creates a value of HostVolumeProperties
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
hvpSourcePath :: Lens' HostVolumeProperties (Maybe Text) Source
The path on the host container instance that is presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you.
KeyValuePair
data KeyValuePair Source
A key and value pair object.
See: keyValuePair
smart constructor.
keyValuePair :: KeyValuePair Source
Creates a value of KeyValuePair
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
kvpValue :: Lens' KeyValuePair (Maybe Text) Source
The value of the key value pair. For environment variables, this is the value of the environment variable.
kvpName :: Lens' KeyValuePair (Maybe Text) Source
The name of the key value pair. For environment variables, this is the name of the environment variable.
LoadBalancer
data LoadBalancer Source
Details on a load balancer that is used with a service.
See: loadBalancer
smart constructor.
loadBalancer :: LoadBalancer Source
Creates a value of LoadBalancer
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
lbLoadBalancerName :: Lens' LoadBalancer (Maybe Text) Source
The name of the load balancer.
lbContainerName :: Lens' LoadBalancer (Maybe Text) Source
The name of the container to associate with the load balancer.
lbContainerPort :: Lens' LoadBalancer (Maybe Int) Source
The port on the container to associate with the load balancer. This port
must correspond to a containerPort
in the service's task definition.
Your container instances must allow ingress traffic on the hostPort
of
the port mapping.
LogConfiguration
data LogConfiguration Source
Log configuration options to send to a custom log driver for the container.
See: logConfiguration
smart constructor.
Creates a value of LogConfiguration
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
lcOptions :: Lens' LogConfiguration (HashMap Text Text) Source
The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: 'sudo docker version | grep "Server API version"'
lcLogDriver :: Lens' LogConfiguration LogDriver Source
The log driver to use for the container. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: 'sudo docker version | grep "Server API version"'
MountPoint
data MountPoint Source
Details on a volume mount point that is used in a container definition.
See: mountPoint
smart constructor.
mountPoint :: MountPoint Source
Creates a value of MountPoint
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
mpContainerPath :: Lens' MountPoint (Maybe Text) Source
The path on the container to mount the host volume at.
mpSourceVolume :: Lens' MountPoint (Maybe Text) Source
The name of the volume to mount.
mpReadOnly :: Lens' MountPoint (Maybe Bool) Source
If this value is true
, the container has read-only access to the
volume. If this value is false
, then the container can write to the
volume. The default value is false
.
NetworkBinding
data NetworkBinding Source
Details on the network bindings between a container and its host
container instance. After a task reaches the RUNNING
status, manual
and automatic host and container port assignments are visible in the
networkBindings
section of DescribeTasks API responses.
See: networkBinding
smart constructor.
networkBinding :: NetworkBinding Source
Creates a value of NetworkBinding
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
nbBindIP :: Lens' NetworkBinding (Maybe Text) Source
The IP address that the container is bound to on the container instance.
nbProtocol :: Lens' NetworkBinding (Maybe TransportProtocol) Source
The protocol used for the network binding.
nbHostPort :: Lens' NetworkBinding (Maybe Int) Source
The port number on the host that is used with the network binding.
nbContainerPort :: Lens' NetworkBinding (Maybe Int) Source
The port number on the container that is be used with the network binding.
PortMapping
data PortMapping Source
Port mappings allow containers to access ports on the host container
instance to send or receive traffic. Port mappings are specified as part
of the container definition. After a task reaches the RUNNING
status,
manual and automatic host and container port assignments are visible in
the networkBindings
section of DescribeTasks API responses.
See: portMapping
smart constructor.
portMapping :: PortMapping Source
Creates a value of PortMapping
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
pmProtocol :: Lens' PortMapping (Maybe TransportProtocol) Source
The protocol used for the port mapping. Valid values are tcp
and
udp
. The default is tcp
.
pmHostPort :: Lens' PortMapping (Maybe Int) Source
The port number on the container instance to reserve for your container.
You can specify a non-reserved host port for your container port
mapping, or you can omit the hostPort
(or set it to '0') while
specifying a containerPort
and your container automatically receives a
port in the ephemeral port range for your container instance operating
system and Docker version.
The default ephemeral port range is 49153 to 65535, and this range is used for Docker versions prior to 1.6.0. For Docker version 1.6.0 and later, the Docker daemon tries to read the ephemeral port range from '\/proc\/sys\/net\/ipv4\/ip_local_port_range'; if this kernel parameter is unavailable, the default ephemeral port range is used. You should not attempt to specify a host port in the ephemeral port range, because these are reserved for automatic assignment. In general, ports below 32768 are outside of the ephemeral port range.
The default reserved ports are 22 for SSH, the Docker ports 2375 and
2376, and the Amazon ECS container agent port 51678. Any host port that
was previously specified in a running task is also reserved while the
task is running (after a task stops, the host port is released).The
current reserved ports are displayed in the remainingResources
of
DescribeContainerInstances output, and a container instance may have up
to 50 reserved ports at a time, including the default reserved ports
(automatically assigned ports do not count toward this limit).
pmContainerPort :: Lens' PortMapping (Maybe Int) Source
The port number on the container that is bound to the user-specified or
automatically assigned host port. If you specify a container port and
not a host port, your container automatically receives a host port in
the ephemeral port range (for more information, see hostPort
).
Resource
Describes the resources available for a container instance.
See: resource
smart constructor.
Creates a value of Resource
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
rStringSetValue :: Lens' Resource [Text] Source
When the stringSetValue
type is set, the value of the resource must be
a string type.
rIntegerValue :: Lens' Resource (Maybe Int) Source
When the integerValue
type is set, the value of the resource must be
an integer.
rDoubleValue :: Lens' Resource (Maybe Double) Source
When the doubleValue
type is set, the value of the resource must be a
double precision floating-point type.
rLongValue :: Lens' Resource (Maybe Integer) Source
When the longValue
type is set, the value of the resource must be an
extended precision floating-point type.
rName :: Lens' Resource (Maybe Text) Source
The name of the resource, such as CPU
, MEMORY
, PORTS
, or a
user-defined resource.
rType :: Lens' Resource (Maybe Text) Source
The type of the resource, such as INTEGER
, DOUBLE
, LONG
, or
STRINGSET
.
ServiceEvent
data ServiceEvent Source
Details on an event associated with a service.
See: serviceEvent
smart constructor.
serviceEvent :: ServiceEvent Source
Creates a value of ServiceEvent
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
seCreatedAt :: Lens' ServiceEvent (Maybe UTCTime) Source
The Unix time in seconds and milliseconds when the event was triggered.
Task
Details on a task in a cluster.
See: task
smart constructor.
Creates a value of Task
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
tOverrides :: Lens' Task (Maybe TaskOverride) Source
One or more container overrides.
tClusterARN :: Lens' Task (Maybe Text) Source
The Amazon Resource Name (ARN) of the of the cluster that hosts the task.
tContainerInstanceARN :: Lens' Task (Maybe Text) Source
The Amazon Resource Name (ARN) of the container instances that host the task.
tContainers :: Lens' Task [Container] Source
The containers associated with the task.
tStartedBy :: Lens' Task (Maybe Text) Source
The tag specified when a task is started. If the task is started by an
Amazon ECS service, then the startedBy
parameter contains the
deployment ID of the service that starts it.
tTaskDefinitionARN :: Lens' Task (Maybe Text) Source
The Amazon Resource Name (ARN) of the of the task definition that creates the task.
TaskDefinition
data TaskDefinition Source
Details of a task definition.
See: taskDefinition
smart constructor.
taskDefinition :: TaskDefinition Source
Creates a value of TaskDefinition
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
tdStatus :: Lens' TaskDefinition (Maybe TaskDefinitionStatus) Source
The status of the task definition.
tdFamily :: Lens' TaskDefinition (Maybe Text) Source
The family of your task definition, used as the definition name.
tdContainerDefinitions :: Lens' TaskDefinition [ContainerDefinition] Source
A list of container definitions in JSON format that describe the different containers that make up your task. For more information about container definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon EC2 Container Service Developer Guide.
tdTaskDefinitionARN :: Lens' TaskDefinition (Maybe Text) Source
The full Amazon Resource Name (ARN) of the of the task definition.
tdRevision :: Lens' TaskDefinition (Maybe Int) Source
The revision of the task in a particular family. The revision is a version number of a task definition in a family. When you register a task definition for the first time, the revision is '1'; each time you register a new revision of a task definition in the same family, the revision value always increases by one (even if you have deregistered previous revisions in this family).
tdVolumes :: Lens' TaskDefinition [Volume] Source
The list of volumes in a task. For more information about volume definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon EC2 Container Service Developer Guide.
tdRequiresAttributes :: Lens' TaskDefinition [Attribute] Source
The container instance attributes required by your task.
TaskOverride
data TaskOverride Source
The overrides associated with a task.
See: taskOverride
smart constructor.
taskOverride :: TaskOverride Source
Creates a value of TaskOverride
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
toContainerOverrides :: Lens' TaskOverride [ContainerOverride] Source
One or more container overrides sent to a task.
Ulimit
:: UlimitName | |
-> Int | |
-> Int | |
-> Ulimit |
Creates a value of Ulimit
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
uSoftLimit :: Lens' Ulimit Int Source
The soft limit for the ulimit type.
uHardLimit :: Lens' Ulimit Int Source
The hard limit for the ulimit type.
VersionInfo
data VersionInfo Source
The Docker and Amazon ECS container agent version information about a container instance.
See: versionInfo
smart constructor.
versionInfo :: VersionInfo Source
Creates a value of VersionInfo
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
viAgentHash :: Lens' VersionInfo (Maybe Text) Source
The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent GitHub repository.
viAgentVersion :: Lens' VersionInfo (Maybe Text) Source
The version number of the Amazon ECS container agent.
viDockerVersion :: Lens' VersionInfo (Maybe Text) Source
The Docker version running on the container instance.
Volume
A data volume used in a task definition.
See: volume
smart constructor.
vName :: Lens' Volume (Maybe Text) Source
The name of the volume. This name is referenced in the sourceVolume
parameter of container definition mountPoints
.
vHost :: Lens' Volume (Maybe HostVolumeProperties) Source
The path on the host container instance that is presented to the containers which access the volume. If this parameter is empty, then the Docker daemon assigns a host path for you.
VolumeFrom
data VolumeFrom Source
Details on a data volume from another container.
See: volumeFrom
smart constructor.
volumeFrom :: VolumeFrom Source
Creates a value of VolumeFrom
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
vfSourceContainer :: Lens' VolumeFrom (Maybe Text) Source
The name of the container to mount volumes from.
vfReadOnly :: Lens' VolumeFrom (Maybe Bool) Source
If this value is true
, the container has read-only access to the
volume. If this value is false
, then the container can write to the
volume. The default value is false
.