Eğitim Hakkında
Docker, konteynerler içinde uygulama oluşturma, gönderme ve çalıştırma sürecini otomatikleştirmek için açık kaynaklı bir platformdur. Kubernetes, kümelenmiş bir ortamda kapsayıcılı uygulamaları uygun ölçekte dağıtmak ve yönetmek için gereken araçları sağlayarak bir adım daha ileri gider.
Eğitmen liderliğindeki bu canlı eğitimde (yerinde veya uzaktan), katılımcılar Docker kapsayıcılarının nasıl oluşturulacağını ve yönetileceğini öğrenecek, ardından bir kap içinde örnek bir uygulama dağıtacak. Katılımcılar ayrıca bir Kubernetes kümesi içinde kapsayıcılı uygulamalarını nasıl otomatikleştireceklerini, ölçeklendireceklerini ve yöneteceklerini öğreneceklerdir. Son olarak, eğitim daha gelişmiş konulara geçerek katılımcılara bir Kubernetes kümesinin güvenliğini sağlama, ölçeklendirme ve izleme sürecinde rehberlik eder.
Neler Öğreneceksiniz
- Set up and run a Docker container.
- Deploy a containerized server and web application.
- Build and manage Docker images.
- Set up a Docker and Kubernetes cluster.
- Use Kubernetes to deploy and manage a clustered web application.
- Secure, scale and monitor a Kubernetes cluster.
Eğitim İçeriği
[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