Baking Docker using Chef
Docker wave has changed the way we look at infrastructure today. Docker is like a lightweight VM which provides an isolated environment on your OS, without the need for a separate kernel. You can run your applications inside docker which offers the ease of deployment.
However, docker requires some management. How do you configure and tune the OS that will host them? How can you ease the process of creating and managing the right dockerfiles? How do you manage docker images? How do you orchestrate docker containers? How do you manage configurations across the different environments of dev, test and prod?
You can use Chef to provision and configure the machines which will host docker containers. Chef can create container images. Chef can configure docker containers when they boot and while they run. Chef can deploy, run and stop containers. Moreover chef can help you debug and analyse whats happening in your application that runs inside the docker container.
This tutorial will run you through the way you can configure and manage Docker using Chef. It will be supported with a demo and a real business case.
Outline/structure of the Session
- Quick introduction to Docker and Chef
- Pros and cons of using Chef + Docker
- Simple CI/CD pipeline
- Dealing with multiple environments
- Secure credential management
- Introduction to docker cookbook
- Installing docker
- Generating dockerfile and creating docker image
- Deploying and running docker containers
- Managing docker containers in production
- Debugging applications running inside containers
- Understanding a business case and building the entire CI/CD setup using Chef+Docker
Understanding of how chef can be used to install, deploy and manage how to run docker containers.
devops engineers, sysadmin, developers, managers
Those interested can get their laptops and can follow the session to try hand on while the session is in progress. In this case, you will need a Chef workstation setup, access to AWS account and internet connection.