Continuous Delivery Using Docker And Ansible

Visit Tutorial Page ( Report)
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.
  • Course Overview
    • Course Overview
  • Course Introduction
    • Introduction
    • Course Audience and Prerequisites
    • Course Tour
    • Continuous Delivery Overview
    • How to Achieve Continuous Delivery
    • Why Docker?
    • Continuous Delivery Architecture
    • Demo - Preparing Your Environment
    • Installing Docker
    • Installing Ansible
    • Installing Other Tools
    • Creating a Docker Virtual Machine
    • Summary
  • Creating the Sample Application
    • Introduction
    • Demo - Application Walkthrough
    • Demo - Creating the Todobackend Web Service
    • Demo - Unit and Integration Testing
    • Demo - Acceptance Testing
    • Demo - Testing the User Interface
    • Summary
  • Unit/Integration Testing using Docker
    • Introduction
    • Continuous Delivery Workflow
    • Docker Image Hierachy
    • Demo - Creating the Base Image
    • Establishing the Virtual Environment
    • Building the Base Image
    • Demo - Creating the Development Image
    • Creating Application Requirements Files
    • Development Image Review
    • Testing the Development Image
    • Demo - Creating a Docker Compose Environment
    • Running Tests using Docker Compose
    • Waiting for a Dependent Service to Initialize
    • Docker Compose Test Environment Review
    • Summary
  • Building Artifacts using Docker
    • Introduction
    • Continuous Delivery Workflow
    • Application Artifact Types
    • Demo - Building Application Artifacts
    • Test and Build Consistency
    • Adding a Builder Service
    • Building and Publishing Python Wheels
    • Summary
  • Creating Releases using Docker
    • Introduction
    • Serving the Application
    • Demo - Creating the Release Environment
    • Creating the Release Image
    • Describing the Release Image Part 1
    • Describing the Release Image Part 2
    • Testing the Release Image
    • Demo - Bootstrapping the Application
    • Bootstrapping the Application Review
    • Demo - Acceptance Testing
    • Running Acceptance Tests
    • Continuous Delivery Workflow Review
    • Summary
    • Introduction
    • Serving the Application
    • Demo - Creating the Release Environment
    • Creating the Release Image
    • Describing the Release Image Part 1
    • Describing the Release Image Part 2
    • Testing the Release Image
    • Demo - Bootstrapping the Application
    • Bootstrapping the Application Review
    • Demo - Acceptance Testing
    • Running Acceptance Tests
    • Continuous Delivery Workflow Review
    • Summary
  • Continuous Delivery Automation
    • Introduction
    • Demo - Using the Make Build System
    • Creating a Makefile
    • Describing the Workflow
    • Parameterizing the Makefile
    • Demo - Workflow Infrastructure
    • Creating Docker Hub Repositories
    • Summary
  • Enhancing the Workflow
    • Introduction
    • Dangling Images and Volumes
    • Improving User Feedback
    • Self Containment
    • Ensuring Self Containment
    • Producing Test Reports
    • Handling Failures and Errors
    • Ensuring Consistency
    • Configuring Consistency
    • Tagging the Release Image
    • Publishing the Release Image
    • Docker Compose v2 Specification
    • Summary
  • Continuous Delivery Using Jenkins
    • Introduction
    • Demo - Setting up Jenkins Locally
    • Configuring the Workflow in Jenkins
    • Testing the Workflow
    • Creating a Self Defined Workflow
    • Test Failures
    • Publishing the Jenkins Image
    • Demo - Publishing Jenkins to AWS
    • Initial AWS Setup
    • AWS VPC Infrastructure
    • Creating a CloudFormation Template
    • Defining an EC2 Instance
    • Defining Security Groups and Roles
    • Defining Elastic Load Balancers
    • Configuring the EC2 Container Service
    • Configuring Stack Outputs
    • Creating the Stack
    • Demo - Integrating Jenkins with GitHub and Docker Hub
    • Testing the Workflow
    • Configuring GitHub Integration
    • Configuring Docker Hub Integration
    • Summary
  • Continuous Deployment using Ansible
    • Introduction
    • Demo - Creating the Application Stack
    • Configuring Autoscaling
    • Configuring the Relational Database Service
    • Configuring the Elastic Load Balancer and EC2 Container Service
    • Demo - Creating an Ansible Deployment Playbook
    • Deployment Walkthrough
    • Configuring Access to AWS
    • Creating the Playbook
    • Creating the Stack Task
    • Installing Custom Ansible Modules
    • Deploying the Application
    • Testing the Playbook
    • Demo - Continuously Deploying the Application using Jenkins
    • Creating the Jenkins Deployment Job
    • Continuously Deploying New Releases
    • Summary
Write Your Review

Reviews