Get in Touch

Course Outline

[Day 01]

Introduction

  • Containers vs virtual machines.
  • Speed and performance.

Overview of Docker architecture.

  • Docker and the Linux kernel.
  • Docker components (Docker client, Docker daemon, images, registry, containers).

Using Docker to run and manage containers.

  • Images, containers, volumes, networks.

Brief overview of container orchestration.

Installing Docker.

Pulling an image from the internet.

  • Sample: Apache Tomcat.

Running the container.

Docker registries.

  • Public vs private.

Creating and managing Dockerfiles.

Building a Docker image.

Deploying a web application.

  • Sample application: Java EE application server.

How Docker containers communicate with each other.

Configuring volumes and networks in Docker.

  • Linking and state.


[Day 02]

Deep dive into container orchestration with Kubernetes.

Overview of Kubernetes architecture.

  • Pods, labels/selectors, replication controllers, services, API.

Installing a Kubernetes cluster.

Creating Kubernetes pods, volumes and deployments.

Grouping and organizing your cluster.

Discovering and publishing services.

Discovering and connecting to containers.

Deploying a web application.

  • Handling application components.
  • Handling Database connections.

Kubernetes security.

  • Authentication & authorization.

Advanced networking.

  • Docker networking vs Kubernetes networking.

Monitoring Kubernetes.

  • Cluster logging with Elasticsearch and fluentd.
  • Container level monitoring (cAdvisor UI, Influxdb, Prometheus).


[Day 03]

Scaling your Kubernetes cluster.

Infrastructure for Kubernetes.

  • Provisioning, partitioning, networking.

Building a high-availability cluster.

  • Load balancing and service discovery.

Deploying a scalable application.

  • Horizontal pod autoscaling.
  • Database clustering in Kubernetes.

Updating your application.

  • Releases in Kubernetes.

Troubleshooting.

Closing remarks.

Requirements

  • Familiarity with the Linux command line.
  • Basic understanding of virtualization concepts.
  • Understanding of networking concepts.
  • Understanding of how web applications function.

Audience

  • Software Developers.
  • Architects.
  • Deployment Engineers.
 21 Hours

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories