In this iteration the team is planning to upgrade Docker to the latest stable release on all of the POC hosts, as well as, the build/package server. In order to do this, the Systems team will have to deviate from the Red Hat packaged Docker, which is not currently supporting Docker 1.9.x. Once the infrastructure has been upgraded, the team will build a Docker Swarm using the three docker-web hosts. Once the Swarm is up and running, we will design an application to test various deployment scenarios. For example, we will attempt to test communication across multiple hosts using Docker's new network overlay features. Additionally, we will test Docker's ability to scale out services across multiple hosts.
Also in this iteration, the team will begin looking into the workflow associated with moving code through the various software development lifecycle steps. The team will research options for storing configuration information. For example, if we use different databases for different environments, do we have to have a separate Dockerfile/image for each environment? Or, is this information passed in as environmental variables or configuration files? The team will report back on the security implications associated with the various approaches. As part of this research, the team will also look at how a tool like Jenkins could be coupled with Docker to automate parts of the workflow and assist with deploying an application into each dev/test/prod environment.
- Upgrade Docker to 1.9.x on docker-web1, docker-web2, docker-web3, docker-app1, docker-app2, docker-app3, and dockerpackage (Mike L., Patrice)
- Create a Docker Swarm with docker-web1, docker-web2, and docker-web3. Make docker-web3 the Swarm Master. (John, Alex T., Mike L.)
- Create test application that demonstrates swarm capabilities (John, Alex T., Paul)
- Setup a Docker private registry on docker-app3 (John, Alex, and Mike L.)
- Research and determine the proper place to store sensitive configuration information (i.e. db connection information, passwords, etc) for build (Mike M., Mike P., Alex T, John)
- Determine Docker workflow for migrating code from development to production exploring opportunities for automation (Mike M., Mike P., Alex T, John)
- Experiment with Dockerizing more complicated applications using Docker Compose (Mike M., Mike P., Alex T, John)
- Insert diagrams here
- Insert links here
Potential Next Steps