
Explore docker and kubernetes concepts through practical labs, and start building a microservices application in this course.
Learn to build scalable microservices using Docker and Kubernetes, from hello world to a two-tier PHP frontend and Flask API backend, with independent deployability and scalability.
Explore containerization concepts, Docker architecture, and containerizing applications. Learn to build multi-container Docker apps with volumes, networks, Docker Compose, and orchestrate with Kubernetes including replica sets, services, deployments, and microservices.
Install Docker and Kubernetes, then build a Hello World program in a Docker container and in a Kubernetes pod to demonstrate scalable app basics.
Learn how Docker desktop provides a one-click install to build and share containerized applications on Mac, Linux, or Windows, with a user interface to manage containers, images, and volumes.
Install Docker Desktop on Windows, configure WSL, install Ubuntu, and verify Docker version to ensure the Docker engine is running.
Run a hello world container on docker desktop to learn container basics, including pulling images from docker hub, starting and listing containers, and pruning unused images.
Run a hello world pod on a Kubernetes cluster using kubectl, learn to create, describe, and delete pods, and see the 'Hello from Docker' output.
Explore docker basics by containerizing a back end rest api server and a front end php website, using containers, images, volumes, and networks, through docker compose.
Understand how containers wrap applications and dependencies into lightweight images for isolated, reproducible deployment. Learn Docker architecture, the daemon and Docker Hub, and how containers contrast with virtual machines.
Containerize the fibonacci rest api backend with docker, build an image from a dockerfile, run and test the container, map ports, and push the image to docker hub.
Learn how to change container behavior by passing arguments using entrypoint and CMD, run multiple versions of the Fibonacci rest API, and map logs via a host volume.
Create a multi-container docker app with a flask back end and a php front end on a shared network, exposing ports and testing the fibonacci api.
Containerize a PHP front end by building a Dockerfile, bundling PHP sources into a self-contained image, push to Docker Hub, expose port 30081, and test with passphrase and Fibonacci 50.
Simplify multi-container applications with Docker compose by defining front-end and back-end services in a yaml file, then deploy all services, leverage the network, and manage volumes for the Fibonacci app.
Explore Kubernetes fundamentals by building a microservices app with two services: a back end rest API server and a front end PHP website, using pods, replica sets, deployments, and services.
Explore the Kubernetes pod for the rest api server, focusing on the fibonacci backend Flask app, its pod yaml, and the four mandatory sections: apiVersion, kind, metadata, and the spec.
Create a rest api server in a kubernetes pod and expose it with a nodeport service for host access. Test the api with curl and verify fibonacci results.
Learn how a Kubernetes replica set maintains three identical REST API server pods by matching labels app equals Fibonacci and tier equals back end, using the pod template for creation.
Build a highly available rest api server with Kubernetes replica set, maintain a stable three-pod deployment, and practice scaling the replica set from three to five and back.
Configure Kubernetes services for the rest api server by using labels and selectors to route to backend pods, exposing a node port and a cluster ip service.
Create Kubernetes services to expose the REST API server with a node port and cluster IP, load balancing across a three-pod replica set using the Fibonacci REST API.
Learn how to define a Kubernetes deployment for the REST API server, compare it with a replica set, use rolling updates, monitor history, and perform rollbacks.
Create and manage a highly available REST API server by deploying a five-replica Kubernetes deployment, scaling pods up and down, and editing deployment settings with kubectl edit.
Manage revisions of the Fibonacci backend rest api server using Kubernetes deployment to perform rolling updates, monitor replica sets, and rollback to version one for minimal downtime.
Explain how to use a Kubernetes persistent volume and PVC to persist REST API server logs, binding to a hostpath volume for multiple pods on one node.
Persist your application state with a persistent volume by creating and binding a PV and PVC, deploying Fibonacci backend v3, and verifying data durability across pods.
Learn to configure a Kubernetes application with a config map and Portainer, mounting config data as files and env vars, and verify changes via logs and deployment versioning.
Explore how microservices decompose apps into independently deployable, business-domain-driven services. In Kubernetes, a microservice is a deployment exposed by a service at a single endpoint.
Deploy the two-tier fibonacci application by launching the front end php site and the back end rest api, using a Kubernetes secret for the passphrase.
Recaps building scalable applications with Docker and Kubernetes, from containerized REST API to multi-container deployments. Includes Docker Compose, volumes, node port service, replica sets, deployments, persistent volumes, and config maps.
Explore options for earning Kubernetes certification, focusing on CKAD and CKA. Check certification pages for curriculum, exam tips, candidate handbook, and recommended Udemy courses to prepare.
Explore hands-on Docker and Kubernetes experiments by scaling the frontend, updating container images, and deploying revisions; test API performance, add a database, and persist data with volumes.
Did you want to start learning Application Containerization, Docker, and Kubernetes but did not know where to start? Do you want something that is not just theroy, but rather a journey where you create and run an actual Application?
Then this course is for you. You will learn the concepts of Containers and how to put them to practice using Docker and Kubernetes. Better yet, you will build a Microservices Application in this course as you learn and apply the new concepts.
Course Objectives
Application Containerization
Multi-container Docker Applications
Kubernetes as a Container Orchestrator
Manage Applications using Kubernetes
Configure Applications using Kubernetes
Learn and apply the concepts of Microservices
You will build this Application
A Two-Tier Microservices Application which has
A PHP Web Front End
A Flask REST API Server Backend
Fully scalable, ready to scale up or down
Implemented in a Microservices Architecture, allowing Independent Deployability and Independent Scalability of each tier
Persist Important data on the server, even if the Application crashes
Apply all the concepts you will learn as you build this Application bit by bit
Technology used in the Application
The Frontend tier is built with PHP, HTML, CSS
The Backend tier is a REST API Server written in the Flask Python Framework
Containerize each tier in its own Docker Container Image
Build the end-to-end application using Docker, then using Kubernetes
Learn what Kubernetes adds on top of Docker to better manage your application
AW-11166561487