Docker & Kubernetes on Google Cloud | 3-day Virtual Class
Prefer to attend a class with a live instructor?
This is the live instructor-led version of our technical "workshop style" class that covers the core Docker and Kubernetes concepts and guides you to build, deploy and monitor containers on Google Cloud Platform and Google Kubernetes Engine. Developers, DevOps, Site Reliability Engineers and I.T. Pros will learn how to use containers locally and on GCP. You’ll experience several demos and hands-on "follow along" activities with the trainer throughout the course as you learn how to build, deploy and monitor containers on GCP. No coding experience is required for the hands-on activities but you'll use the terminal, command prompt and VS Code extensively.
Need to organize a private class for your team? A minimum of 4 participants is required.
In Canada? With the Canada Job Grant (CJG), receive up to 100% in employee training grants! Get more infoView Public ScheduleContact us to organize a Private Class
Learn how to containerize applications by the Docker CLI and Visual Studio Code. Push and pull container images on Docker Hub, a container registry. Learn how to create multi-container applications using Docker Compose.
Learn about the Kubernetes architecture and how it works. Run it locally and use the Kubernetes CLI and Visual Studio Code to run, debug and troubleshoot applications and services. Learn about pods and the different workloads available. Configure networking, storage and set liveness and readiness probes.
With Cloud Run, run containers the serverless way without managing servers.
A Compute Engine instance is a virtual machine where you can easily deploy a container.
Google Kubernetes Engine (GKE)
Deploy and manage containerized applications with a fully managed Kubernetes service. Learn how to configure persistence using Cloud Storage. Scale pods using the Horizontal Pod Autoscaler and Nodes using the Cluster Autoscaler.
Build, store, secure, scan, and manage container images with Artifact Registry, a fully managed container registry.
Tools and Service Mesh
Learn how to use Helm to package and deploy applications. Learn about the benefits of using a service mesh by "meshing" and troubleshooting an application using Linkerd.
Collect, analyze and act on telemetry data gathered from your Kubernetes clusters and containers using the Monitoring and Logging services. Learn also how to use Prometheus and Grafana.
The Learning Experience
Learn about containers and Kubernetes with a live instructor that will guide you thru a series of short lectures immediately followed by a quick lab.
Apply the concepts learned with a series of short hands-on labs where the instructor guides you with a series of clear step by step instructions.
This isn’t just another one of those “watch me build something and try not to fall asleep” courses. Questions, participation, and discussions are welcomed and encouraged.
Includes the Self-Paced version
Includes a one year unlimited access to the on-demand video version. This way, you'll be able to revisit and try again some labs at work or even watch a lesson that you missed because of a call during the live training.
In the following course outline, the gear icon denotes a topic with hands-on “follow along” activity
- Course Introduction
- Cloud Native
- Cloud Native Foundation
- Cloud Native Concepts
- Containers concepts
- What is Docker?
- Using Docker Desktop
- Containers on Google Cloud Platform
- Using Docker
- Using the Docker CLI
- Containerize an existing application
- Run containers locally
- Using VS Code to build and manage containers
- Benefits of multi stage builds
- Persisting data using volumes
- Multi-Containers with Docker Compose
- The YAML file format
- Using the docker-compose command
- Build and run multi containers apps
- Container registry
- Push and pull containers to Docker Hub
- Push and pull containers to Artifact Registry
- App Engine
- App Engine concepts
- Running containers on App Engine
- Compute Engine
- Compute Engine concepts
- Running containers on Compute Engine
- Cloud Run
- Cloud Run concepts
- Running containers on Cloud Run
- Traffic management
- Logging & Monitoring
- Using secrets
- Using VS Code
- What is Kubernetes?
- Running Kubernetes locally
- Docker Desktop
- Minikube, MicroK8s, Kind
- Kubernetes CLI
- The declarative way vs the imperative way
- Using Kubectl
- YAML files
- Master & Worker Nodes
- Pods concepts
- Pods lifecycle
- Create and run containers in pods
- YAML files
- Multi container pods common patterns
- Communication between pods
- Reaching from the outside world
- Using Init Containers to initialize pods
- Using Selectors
- Rolling Updates
- Blue-Green Deployments
- Load Balancer
- Storage & Persistance
- The Static Way vs The Dynamic Way
- Persistent Volumes and Claims
- Using Cloud Storage with Storage Classes
- App settings
- Startup, Readiness & Liveness probes
- Kubernetes Web UI
- Lens: a dashboard running in an app
- K9s: a dashboard in a terminal!
- Google Kukernetes Engine
- Concepts, SLA, Pricing model
- Standard vs Autopilot
- Create a GKE Standard cluster using the Console
- Create a GKE Standard cluster using the CLI
- Create a GKE Autopilot cluster using the Console
- Connect to your cluster
- Using Cloud Shell
- Compute Engine Disks
- Auto scaling Pods using the Horizontal Pod Autoscaler
- Auto scaling Nodes using the Cluster Autoscaler
- Save money using Spot instances
- Upgrading a cluster to a newer K8s version
- Using Helm 3
- Helm concepts
- Use a chart and deploy an app
- Create a chart to deploy an app
- Update and Rollback
- Logging & Monitoring
- Monitoring using Cloud Monitoring
- Logging using Cloud Logging
- Prometheus use cases
- Installing Prometheus & Grafana
- Service Mesh
- Use cases
- What are Istio and Linkerd
- Installing Linkerd on GKE
- Troubleshooting an app using Linkerd
- Why use an Ingress Controller
- Setting up Nginx-Ingress
- Configuring routes
Meet your Instructor
Guy Barrette is a developer/trainer with more then 25 years of experience. He worked for many years as a developer, solutions architect, Microsoft Certified Trainer and now he shares his passion for containers and microservices teaching Docker and Kubernetes. He was awarded Microsoft Most Valuable Professional in the Azure category and passed the following certifications: Kubernetes and Cloud Native Associate, Certified Kubernetes Application Developer (CKAD), Terraform Certified Associate, AWS Cloud Practitioner, Google Cloud Associate Cloud Engineer, Azure Fundamentals, Azure Developer Associate and Azure Architect Design.
This is a very hands-on course with plenty of demonstrations and several labs periods.
Attendees must have a laptop or PC. Heavy locked down corporate laptops will likely not work. Windows, Mac and Linux (Ubuntu) are supported.