Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- AWSTemplateFormatVersion: "2010-09-09"
- Description: >
- Aplicacion Docker welcome-to-docker ejecutandose en ECS Fargate.
- Parameters:
- VpcId:
- Type: AWS::EC2::VPC::Id
- Description: VPC donde se ejecutara la aplicacion
- PublicSubnetId:
- Type: AWS::EC2::Subnet::Id
- Description: Subred publica con salida a Internet
- Resources:
- ECSCluster:
- Type: AWS::ECS::Cluster
- Properties:
- ClusterName: welcome-cluster
- TaskExecutionRole:
- Type: AWS::IAM::Role
- Properties:
- RoleName: !Sub "${AWS::StackName}-execution-role"
- AssumeRolePolicyDocument:
- Version: "2012-10-17"
- Statement:
- - Effect: Allow
- Principal:
- Service:
- - ecs-tasks.amazonaws.com
- Action:
- - sts:AssumeRole
- ManagedPolicyArns:
- - !Sub arn:${AWS::Partition}:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy
- WebSecurityGroup:
- Type: AWS::EC2::SecurityGroup
- Properties:
- GroupDescription: Permite acceder a la aplicacion web
- VpcId: !Ref VpcId
- SecurityGroupIngress:
- - Description: HTTP publico para la demo
- IpProtocol: tcp
- FromPort: 80
- ToPort: 80
- CidrIp: 0.0.0.0/0
- SecurityGroupEgress:
- - IpProtocol: -1
- CidrIp: 0.0.0.0/0
- WelcomeTaskDefinition:
- Type: AWS::ECS::TaskDefinition
- Properties:
- Family: welcome-task
- RequiresCompatibilities:
- - FARGATE
- NetworkMode: awsvpc
- Cpu: "256"
- Memory: "512"
- ExecutionRoleArn: !GetAtt TaskExecutionRole.Arn
- ContainerDefinitions:
- - Name: welcome
- Image: docker/welcome-to-docker:latest
- Essential: true
- PortMappings:
- - ContainerPort: 80
- HostPort: 80
- Protocol: tcp
- WelcomeService:
- Type: AWS::ECS::Service
- Properties:
- ServiceName: welcome-service
- Cluster: !Ref ECSCluster
- LaunchType: FARGATE
- DesiredCount: 1
- TaskDefinition: !Ref WelcomeTaskDefinition
- NetworkConfiguration:
- AwsvpcConfiguration:
- AssignPublicIp: ENABLED
- Subnets:
- - !Ref PublicSubnetId
- SecurityGroups:
- - !Ref WebSecurityGroup
- Outputs:
- ClusterName:
- Description: Nombre del cluster ECS
- Value: !Ref ECSCluster
- ServiceName:
- Description: Nombre del servicio ECS
- Value: !GetAtt WelcomeService.Name
- SecurityGroupId:
- Description: Security Group utilizado
- Value: !Ref WebSecurityGroup
Advertisement