mirror of https://github.com/docker/compose.git
209 lines
5.6 KiB
Plaintext
209 lines
5.6 KiB
Plaintext
|
AWSTemplateFormatVersion: 2010-09-09
|
||
|
Resources:
|
||
|
CloudMap:
|
||
|
Properties:
|
||
|
Description: Service Map for Docker Compose project TestSimpleConvert
|
||
|
Name: TestSimpleConvert.local
|
||
|
Vpc: vpc-123
|
||
|
Type: AWS::ServiceDiscovery::PrivateDnsNamespace
|
||
|
Cluster:
|
||
|
Properties:
|
||
|
ClusterName: TestSimpleConvert
|
||
|
Tags:
|
||
|
- Key: com.docker.compose.project
|
||
|
Value: TestSimpleConvert
|
||
|
Type: AWS::ECS::Cluster
|
||
|
Default80Ingress:
|
||
|
Properties:
|
||
|
CidrIp: 0.0.0.0/0
|
||
|
Description: simple:80/tcp on default network
|
||
|
FromPort: 80
|
||
|
GroupId:
|
||
|
Ref: DefaultNetwork
|
||
|
IpProtocol: TCP
|
||
|
ToPort: 80
|
||
|
Type: AWS::EC2::SecurityGroupIngress
|
||
|
DefaultNetwork:
|
||
|
Properties:
|
||
|
GroupDescription: TestSimpleConvert Security Group for default network
|
||
|
Tags:
|
||
|
- Key: com.docker.compose.project
|
||
|
Value: TestSimpleConvert
|
||
|
- Key: com.docker.compose.network
|
||
|
Value: TestSimpleConvert_default
|
||
|
VpcId: vpc-123
|
||
|
Type: AWS::EC2::SecurityGroup
|
||
|
DefaultNetworkIngress:
|
||
|
Properties:
|
||
|
Description: Allow communication within network default
|
||
|
GroupId:
|
||
|
Ref: DefaultNetwork
|
||
|
IpProtocol: "-1"
|
||
|
SourceSecurityGroupId:
|
||
|
Ref: DefaultNetwork
|
||
|
Type: AWS::EC2::SecurityGroupIngress
|
||
|
LoadBalancer:
|
||
|
Properties:
|
||
|
Scheme: internet-facing
|
||
|
SecurityGroups:
|
||
|
- Ref: DefaultNetwork
|
||
|
Subnets:
|
||
|
- subnet1
|
||
|
- subnet2
|
||
|
Tags:
|
||
|
- Key: com.docker.compose.project
|
||
|
Value: TestSimpleConvert
|
||
|
Type: application
|
||
|
Type: AWS::ElasticLoadBalancingV2::LoadBalancer
|
||
|
LogGroup:
|
||
|
Properties:
|
||
|
LogGroupName: /docker-compose/TestSimpleConvert
|
||
|
Type: AWS::Logs::LogGroup
|
||
|
SimpleService:
|
||
|
DependsOn:
|
||
|
- SimpleTCP80Listener
|
||
|
Properties:
|
||
|
Cluster:
|
||
|
Fn::GetAtt:
|
||
|
- Cluster
|
||
|
- Arn
|
||
|
DeploymentConfiguration:
|
||
|
MaximumPercent: 200
|
||
|
MinimumHealthyPercent: 100
|
||
|
DeploymentController:
|
||
|
Type: ECS
|
||
|
DesiredCount: 1
|
||
|
LaunchType: FARGATE
|
||
|
LoadBalancers:
|
||
|
- ContainerName: simple
|
||
|
ContainerPort: 80
|
||
|
TargetGroupArn:
|
||
|
Ref: SimpleTCP80TargetGroup
|
||
|
NetworkConfiguration:
|
||
|
AwsvpcConfiguration:
|
||
|
AssignPublicIp: ENABLED
|
||
|
SecurityGroups:
|
||
|
- Ref: DefaultNetwork
|
||
|
Subnets:
|
||
|
- subnet1
|
||
|
- subnet2
|
||
|
PlatformVersion: 1.4.0
|
||
|
PropagateTags: SERVICE
|
||
|
SchedulingStrategy: REPLICA
|
||
|
ServiceRegistries:
|
||
|
- RegistryArn:
|
||
|
Fn::GetAtt:
|
||
|
- SimpleServiceDiscoveryEntry
|
||
|
- Arn
|
||
|
Tags:
|
||
|
- Key: com.docker.compose.project
|
||
|
Value: TestSimpleConvert
|
||
|
- Key: com.docker.compose.service
|
||
|
Value: simple
|
||
|
TaskDefinition:
|
||
|
Ref: SimpleTaskDefinition
|
||
|
Type: AWS::ECS::Service
|
||
|
SimpleServiceDiscoveryEntry:
|
||
|
Properties:
|
||
|
Description: '"simple" service discovery entry in Cloud Map'
|
||
|
DnsConfig:
|
||
|
DnsRecords:
|
||
|
- TTL: 60
|
||
|
Type: A
|
||
|
RoutingPolicy: MULTIVALUE
|
||
|
HealthCheckCustomConfig:
|
||
|
FailureThreshold: 1
|
||
|
Name: simple
|
||
|
NamespaceId:
|
||
|
Ref: CloudMap
|
||
|
Type: AWS::ServiceDiscovery::Service
|
||
|
SimpleTCP80Listener:
|
||
|
Properties:
|
||
|
DefaultActions:
|
||
|
- ForwardConfig:
|
||
|
TargetGroups:
|
||
|
- TargetGroupArn:
|
||
|
Ref: SimpleTCP80TargetGroup
|
||
|
Type: forward
|
||
|
LoadBalancerArn:
|
||
|
Ref: LoadBalancer
|
||
|
Port: 80
|
||
|
Protocol: HTTP
|
||
|
Type: AWS::ElasticLoadBalancingV2::Listener
|
||
|
SimpleTCP80TargetGroup:
|
||
|
Properties:
|
||
|
Port: 80
|
||
|
Protocol: HTTP
|
||
|
Tags:
|
||
|
- Key: com.docker.compose.project
|
||
|
Value: TestSimpleConvert
|
||
|
TargetType: ip
|
||
|
VpcId: vpc-123
|
||
|
Type: AWS::ElasticLoadBalancingV2::TargetGroup
|
||
|
SimpleTaskDefinition:
|
||
|
Properties:
|
||
|
ContainerDefinitions:
|
||
|
- Command:
|
||
|
- .compute.internal
|
||
|
- TestSimpleConvert.local
|
||
|
Essential: false
|
||
|
Image: docker/ecs-searchdomain-sidecar:1.0
|
||
|
LogConfiguration:
|
||
|
LogDriver: awslogs
|
||
|
Options:
|
||
|
awslogs-group:
|
||
|
Ref: LogGroup
|
||
|
awslogs-region:
|
||
|
Ref: AWS::Region
|
||
|
awslogs-stream-prefix: TestSimpleConvert
|
||
|
Name: Simple_ResolvConf_InitContainer
|
||
|
- DependsOn:
|
||
|
- Condition: SUCCESS
|
||
|
ContainerName: Simple_ResolvConf_InitContainer
|
||
|
Essential: true
|
||
|
Image: nginx
|
||
|
LinuxParameters: {}
|
||
|
LogConfiguration:
|
||
|
LogDriver: awslogs
|
||
|
Options:
|
||
|
awslogs-group:
|
||
|
Ref: LogGroup
|
||
|
awslogs-region:
|
||
|
Ref: AWS::Region
|
||
|
awslogs-stream-prefix: TestSimpleConvert
|
||
|
Name: simple
|
||
|
PortMappings:
|
||
|
- ContainerPort: 80
|
||
|
HostPort: 80
|
||
|
Protocol: tcp
|
||
|
Cpu: "256"
|
||
|
ExecutionRoleArn:
|
||
|
Ref: SimpleTaskExecutionRole
|
||
|
Family: TestSimpleConvert-simple
|
||
|
Memory: "512"
|
||
|
NetworkMode: awsvpc
|
||
|
RequiresCompatibilities:
|
||
|
- FARGATE
|
||
|
Type: AWS::ECS::TaskDefinition
|
||
|
SimpleTaskExecutionRole:
|
||
|
Properties:
|
||
|
AssumeRolePolicyDocument:
|
||
|
Statement:
|
||
|
- Action:
|
||
|
- sts:AssumeRole
|
||
|
Condition: {}
|
||
|
Effect: Allow
|
||
|
Principal:
|
||
|
Service: ecs-tasks.amazonaws.com
|
||
|
Version: 2012-10-17
|
||
|
ManagedPolicyArns:
|
||
|
- arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy
|
||
|
- arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly
|
||
|
Tags:
|
||
|
- Key: com.docker.compose.project
|
||
|
Value: TestSimpleConvert
|
||
|
- Key: com.docker.compose.service
|
||
|
Value: simple
|
||
|
Type: AWS::IAM::Role
|
||
|
|