0.1.0 • Published 5 years ago

@bboure/aws-ecs-task-definition v0.1.0

Weekly downloads
-
License
MIT
Repository
-
Last release
5 years ago

awsEcsTaskDefinition

Deploy an AWS ECS Task Definition using Serverless Component

 

  1. Install
  2. Create
  3. Configure
  4. Deploy

 

1. Install

$ npm install -g @serverless/cli

2. Create

$ touch serverless.yml .env .env.prod

The directory should look something like this:

|- serverless.yml
|- .env         # your development AWS api keys
|- .env.prod    # your production AWS api keys

the .env files are not required if you have the aws keys set globally and you want to use a single stage, but they should look like this.

AWS_ACCESS_KEY_ID=XXX
AWS_SECRET_ACCESS_KEY=XXX

3. Configure

# serverless.yml

name: my-component
stage: dev

elasticSearch:
  component: "@bboure/aws-ecs-task-definition"
  inputs:
    region: ${region}
    taskDefinition:
      family: my-task
      cpu: "1024"
      memory: "2048"
      volumes:
          - name: foo
            host:
              sourcePath: /home/foo
          - name: bar
            host:
              sourcePath: /home/bar
      containerDefinitions:
          - name: myContainer
            portMappings:
              - hostPort: 80
                containerPort: 80
                protocol: tcp
            cpu: 0
            environment:
              - name: FOO
                value: BAR
            mountPoints:
              - containerPath: /var/www/foo
                sourceVolume: foo
              - containerPath: /var/www/bar
                sourceVolume: bar
            memory: 768
            image: alpine:latest
            essential: true

4. Deploy

  $ components

  AwsEcsTaskDefinition:
  region: eu-west-1
  family: my-task
  arn:    arn:aws:ecs:eu-west-1:955509148573:task-definition/my-task:1

0s › AwsEcsTaskDefinition › done

 

New to Components?

Checkout the Serverless Components repo for more information.