Nov 18, 2017
Infrastructure-as-code with Docker and Jenkins
Following an EC2 outage in June of 2017, the WeWork team began exploring ways to scale their infrastructure while keeping things engineer-friendly.
The began dockerizing their services, using docker-compose to connect dependencies to the docker network and backend services. Jenkinsfile were added to each git repo, and Jenkins created docker [binary] images that were stored in JFrog Artifactory.
CloudFormation configuration files were created to deploy the docker images, with shell scripts handling basic tasks. In this configuration, it became possible to spin-up ECS services and tasks by definition.
The team created Environment Templates for ECS clusters, allowing services to live within environments (ECS Clusters) such as development, qa and production, and for docker images to be promoted between them.


