Amazon ECS Deployment with CloudFormation: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 9: | Line 9: | ||
* [[AWS_CloudFormation_Resource_Types|CloudFormation Resource Types]] | * [[AWS_CloudFormation_Resource_Types|CloudFormation Resource Types]] | ||
= | =Procedure= | ||
Declare the [[Amazon_ECS_Concepts#Task_Definition|task definition]]: | |||
==AWS::ECS::TaskDefinition== | ==AWS::ECS::TaskDefinition== | ||
Line 43: | Line 45: | ||
awslogs-region: !Sub ${AWS::Region} | awslogs-region: !Sub ${AWS::Region} | ||
awslogs-stream-prefix: 'some-prefix' | awslogs-stream-prefix: 'some-prefix' | ||
==Dependencies== | |||
Declare the dependencies: tasks, etc. | |||
<font color=darkgray>TODO</font> | |||
=Organizatorium= | |||
==AWS::ECS::Service== | ==AWS::ECS::Service== |
Revision as of 19:01, 30 March 2019
External
Internal
Procedure
Declare the task definition:
AWS::ECS::TaskDefinition
Resources: TaskDefinition: Type: AWS::ECS::TaskDefinition Properties: Family: 'themyscira' RequiresCompatibilities: ['FARGATE'] TaskRoleArn: !GetAtt TaskRole.Arn ExecutionRoleArn: !GetAtt TaskExecutionRole.Arn
NetworkMode: "awsvpc" Cpu: '2048' Memory: '4096' ContainerDefinitions: - Name: 'some-name' Cpu: '2048' Memory: '4096' Essential: 'true' Environment: - Name: SPRING_PROFILES_ACTIVE Value: 'something' Image: !Sub ${Image}:${Tag} PortMappings: - HostPort: 10002 ContainerPort: 10002 LogConfiguration: LogDriver: "awslogs" Options: awslogs-group: 'some-group' awslogs-region: !Sub ${AWS::Region} awslogs-stream-prefix: 'some-prefix'
Dependencies
Declare the dependencies: tasks, etc.
TODO
Organizatorium
AWS::ECS::Service
Resources: ServiceDefinition: Type: AWS::ECS::Service DependsOn: LoadBalancerListener Properties: ServiceName: themyscira LaunchType: FARGATE Cluster: 'some-cluster' TaskDefinition: !Ref TaskDefinition DesiredCount: 1 HealthCheckGracePeriodSeconds: 60 NetworkConfiguration: AwsvpcConfiguration: AssignPublicIp: DISABLED SecurityGroups: - !Ref ServiceSecurityGroup Subnets: - 'blue-subnet' - 'green-subnet' ServiceRegistries: - RegistryArn: !GetAtt ServiceDiscovery.Arn LoadBalancers: - ContainerName: 'some-name' ContainerPort: 10002 TargetGroupArn: !Ref TargetGroup