Skip to content
This repository has been archived by the owner on Oct 31, 2018. It is now read-only.

toyofukux/screwdriver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

screwdriver

Deprecated This repository is no more mentenanced.

The tools to manage EC2 Container Service(ECS)

Today, we use Docker containers to develop Web Services, and we get start moving towards an Immutable Infrastructure with ECS and screwdriver!!

Caution

This repository depends on AWS, ECS specification.

Future

  • task
    • show the list of task definitions
    • register task new definition
    • describe task definition
  • service
    • show the list of services
    • create service
    • update service
    • describe service
  • cluster
    • show the list of clusters
    • create cluster
    • delete cluster
  • Auto Scaling
  • ELB
  • Blue-Green Deployment

And you have some suggestion, create new Issue :)

Installing

go get github.com/takasing/screwdriver

Configuring

The configurations of screwdriver command consists of environment variables and yml

AWS environment variable

  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • AWS_REGION

Yaml file

Enable to use Golang template.

nginx:
  image: nginx:{{ .NGINX_IMAGE_TAG }}
  cpu: 128
  memory: 64
  portmappings:
    - containerport: 80
      hostPort: 80
  essential: true

api:
  image: golang:{{ .GOLANG_IMAGE_TAG }}
  cpu: 128
  memory: 64
  portmappings:
    - containerport: 3000
      hostport: 3000
  essential: true

Check ecs.ContainerDefinition, and Lowercase fields such as PortMappings to portmappings

Environment variables for yaml

screwdriver picks up environment variables start with SCREW_ prefix.
If you define SCREW_NGINX_IMAGE_TAG environment variable, you can use NGINX_IMAGE_TAG in yml.

Usage

usage: screwdriver [--version] [--help] <command> [<args>]

Available commands are:
    cluster    Operate ECS cluster
    service    Operate ECS service
    task       Operate ECS task

task

Usage: screwdriver task <subcommand> [options]
Subcommands:
        defs          show the list of task definitions
        register      register task definition from configration file

service

Usage: screwdriver service <subcommand> [options]
Subcommands:
        list        show the list of ECS services
        create      create ECS service
        update      update ECS service

cluster

Usage: screwdriver cluster <subcommand> [options]
Subcommands:
        list        show the list of ECS cluster
        create      create ECS cluster
        delete      delete ECS service

About

manage Docker container with EC2 Container Service(ECS)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages