Learn how to fast-track applications from development to production by automating various application tasks with Docker and Ansible. You'll learn how to create a continuous delivery workflow that delivers a sample Python Web application to AWS.
Continuous delivery is fast becoming an indispensable practice for organizations that want to develop and deploy applications to production at speed with improved reliability. This course, Continuous Delivery Using Docker and Ansible, will teach you how to create a robust, production-class continuous delivery workflow that will test, build, release, and continuously deploy your applications in Docker containers. You'll learn how to create a portable workflow locally on your machine that you can invoke with a handful of simple commands, and then learn how to run your workflow in the popular Jenkins continuous delivery system using the new Jenkins pipeline plugin. Along the way, you will learn how to compose multi-container environments using Docker Compose, publish test reports, set up integration with GitHub and Docker Hub, and finally, deploy your application to Amazon Web Services (AWS), using the AWS CloudFormation service to define all of the infrastructure requirements for your application and AWS EC2 Container Service to run your Docker applications in production. By the end of this course, you'll have a better understanding of continuous delivery and how you can use Docker and Ansible to develop and produce better applications more efficiently than ever.
Is Docker a CI/CD tool?
Docker does many things, but one component of it is continuous integration and continuous delivery (CI/CD), which allows you to run tests and deploy code through automation and collaboration.
Why is continuous delivery so important?
Continuous delivery is a critical practice for businesses to incorporate because it allows them to develop and deploy applications and software to production faster, and with improved reliability.
What is Ansible Docker?
Docker is a container engine for creating containers and automating application deployment. Ansible can automate complex multi-tier IT application environments. It allows you to automate Docker in your environment for things that are otherwise being done manually.
What will I learn in this course?
Ultimately you will learn how to create a powerful and efficient continuous delivery workflow that will test, build, release, and continuously deploy your applications in Docker containers.
Are there prerequisites to this course?
Before taking this course you should have a basic understanding of Docker and Ansible or some other configuration management tool. However, this course was designed so you can follow along regardless.
Justin is a full stack technologist working with organizations to build large scale applications and platforms, with a focus on end-to-end application architecture, cloud, continuous delivery, and infrastructure automation.