COURSE OBJECTIVE:
Not available. Please contact.
TARGET AUDIENCE:
Developers, Application Architects, Devops
COURSE PREREQUISITES:
Attendees should meet the following prerequisites:
• Familiarity with the bash shell
• Filesystem navigation and manipulation
• Command line text editors like vim or nano
• Common tooling like curl, wget and ping
COURSE CONTENT:
This course combines all topics of CN100, CN120, and CN230
Containerization motivations and implementation
• Usecases
• Comparison to virtual machines
Creating, managing and auditing containers
• Container implementation from the Linux kernel
• Container lifecycle details
• Core container creation, auditing and management CLI
Best practices in container image design
• Layered filesystem implementation and performance implications
• Creating images with Dockerfiles
• Optimising image builds with multi-stage builds and image design best practices
Single-host container networking
• Docker native networking model
• Software defined networks for containers
• Docker-native single-host service discovery and routing
Provisioning external storage
• Docker volume creation and management
• Best practices and usecases for container-external storage.
Kubernetes Application Essentials
• Make effective use of pod architecture
• Deploy workloads as Kubernetes controllers
• Provision configuration at runtime to Kubernetes workloads
• Network pods together across a cluster using native services
• Provision highly available storage to Kubernetes workloads
• Package an application as a Helm chart
Container Development Environments
• Rapid development with code mounts and automatic reloading
• Attaching debuggers to containerized processes
• Installing Kubernetes development environments
Container Lifecycle
• Optimizing image design to take advantage of the container lifecycle
• Runtime operations to avoid or mitigate
• Implementing logging, resource management and healthchecks for containers
• Handling container exit
• Introduction to developer-driven operational control
Containerizing Applications
• Migrating preexisting applications from VMs to containers
• Refactoring applications for microservices
• Hybrid applications (containerized + uncontainerized)
Container Health & Monitoring
• Implementing container healthchecks with Kubernetes
• Integrating Prometheus monitoring with Kube applications
Introduction to Containerized Continuous Integration
• Differences between traditional and containerized continuous integration
• Tooling choices for CI chain components
• Recommended CI chain architecture
CI Agent Deployment
• Designing access control patterns for CI agents
• Installing and integrating Jenkins with Kubernetes
Building Images in CI
• Implementing build environments
• Designing reusable image hierarchies
Testing in CI
• Unit and integration testing in containers
• Testing pipeline design
• Integrating security scanning in a testing pipeline
Releasing Containerized Applications
• Signing images with content trust
• Packaging applications with Helm
FOLLOW ON COURSES:
Not available. Please contact.