Ultimate DevOps – Continuous Delivery Using Docker and Ansible

מק"ט: #35655 | משך קורס: 40 שעות אק'
| מספר מפגשים: 5

Continuous delivery is fast becoming an indispensable practice for organizations that want to develop and deploy applications to production at speed with improved reliability.

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 kubernetes.

הקורס פעיל לקבוצות מטעם ארגונים בלבד, ניתן לשלוח פנייה רק אם מדובר בקבוצה
*שדות חובה
PDF version


  • Create CD Processes & Workflows to deliver applications
  • Build Specific hands on CI&CD Processes
  • Integrate Between Real-life Development Environments 

קהל יעד

  • Developers
  • CMs
  • DevOps

תנאי קדם

  • Python Familiarity
  • Experience in basic Linux administration


Course Introduction

  • Course Delivery Overview
  • How to achieve Continuous Delivery
  • Why Docker
  • Continuous Delivery Architecture
  • Demo: Preparing Environment
  • Installing Docker
  • Installing Ansible
  • Installing Other Tools
  • Creating a Docker VM


Creating the Sample Application

  • Introduction
  • Demo- Application Walkthrough
  • Demo- Creating the Web Service
  • Unit and Integration Testing
  • Acceptance Testing
  • Testing the User Interface


Unit/Integration Testing Using Docker

  • Introduction
  • Continuous Delivery Workflow
  • Docker Image Hierarchy
  • 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

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


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


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


Enhancing the Workflow

  • Introduction
  • Dangling Images and Volumes
  • Improving User Feedback
  • Self Containment
  • Ensure 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


Continuous Delivery Using Jenkins

  • Introduction
  • Demo: Setting up Jenkins Locally
  • Configuring the Workflow in Jenkins
  • Testing the Workflow
  • Creating a Self-Defined Workflow
  • Tet Failures
  • Publishing the Jenkins Image
  • Demo – Publishing the Jenkins Image to Privatr Registry
  • Initial Kubernetes Setup
  • Kubernetes framework infrastructure
  • Creating a Terraform Template
  • Defining an Kubernetes Hosts
  • Defining Security and Roles
  • Defining Load Balancers
  • Configuring the Kubernetes Cluster Service
  • Configuring Terraform Outputs
  • Creating the Terraform Stack
  • Demo – Integrating Jenkins with GITHUB and Docker Hub
  • Testing the Workflow
  • Configuring GitHub Integration
  • Configuring Docker Hub Integration


Continuous Delivery Using Ansible

  • Introduction
  • Demo: Creating the Application Stack
  • Configuring Auto scaling using Rancher
  • Configuration the Database Service
  • Configuring the Load Balancer and Kubernetes application Service
  • Demo – Creating an Ansible Deployment Playbook
  • Deployment Walkthrough
  • Configuring Access to Kubernetes
  • Creating the Playbook
  • Creating the Terraform Stack task
  • Installing a 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