Skip to main content
Back to Tags

Containers

123 items tagged with "containers"

Filter by type:

Tutorials22

Tutorial

Local Development with Docker Compose

Set up a complete development environment with Docker Compose

Tutorial

How to build and optimize Docker images for smaller, faster builds

Reduce Docker image size and build time with layer ordering, .dockerignore, and build cache strategies.

Tutorial

How to use multi-stage Docker builds to shrink production images

Separate build and runtime stages so compilers and dev dependencies stay out of the final image.

Tutorial

How to build distroless container images for minimal attack surface

Run applications on distroless base images that contain no shell or package manager, reducing size and CVEs.

Tutorial

How to run a multi-container app with Docker Compose

Define an app, a database, and a cache as services in one Compose file with networks, volumes, and health checks.

Tutorial

How to deploy an application to Kubernetes with Deployment and Service

Package an image into a Kubernetes Deployment and expose it with a Service, then scale and roll out updates.

Tutorial

How to package a Kubernetes app with a Helm chart

Create a reusable Helm chart with templated manifests and values so one app deploys cleanly across environments.

Tutorial

How to configure liveness, readiness, and startup probes in Kubernetes

Add health probes so Kubernetes restarts unhealthy pods and only routes traffic to ready ones.

Tutorial

How to autoscale pods with the Kubernetes HorizontalPodAutoscaler

Scale a Deployment automatically on CPU or custom metrics using the HorizontalPodAutoscaler and metrics-server.

Tutorial

How to expose Kubernetes services with an Ingress and TLS

Route external HTTP traffic to services using an Ingress controller, host and path rules, and automatic TLS.

Tutorial

How to manage configuration with Kubernetes ConfigMaps and Secrets

Externalize app settings into ConfigMaps and sensitive values into Secrets, mounted as env vars or files.

Tutorial

How to run stateful workloads with a Kubernetes StatefulSet

Deploy databases and other stateful apps with stable network identities and per-pod persistent storage.

Tutorial

How to set up RBAC in Kubernetes with Roles and ServiceAccounts

Grant least-privilege access to users and workloads using Roles, RoleBindings, and ServiceAccounts.

Tutorial

How to restrict pod traffic with Kubernetes NetworkPolicies

Lock down pod-to-pod traffic with default-deny and selective allow rules using NetworkPolicy resources.

Tutorial

How to enforce Pod Security Standards in Kubernetes

Apply the built-in Pod Security Admission to enforce baseline and restricted policies per namespace.

Tutorial

How to build and run rootless containers

Run containers as a non-root user with Podman or Docker rootless mode to reduce privilege and risk.

Tutorial

How to set Kubernetes resource requests and limits correctly

Right-size CPU and memory requests and limits to improve scheduling, stability, and Quality of Service.

Tutorial

How to deploy a container to Google Cloud Run

Containerize an app and deploy it to Google Cloud Run for autoscaling, request-billed serverless hosting.

Tutorial

How to do blue-green deployments on AWS with CodeDeploy

Run zero-downtime blue-green deployments for containers on Amazon ECS using AWS CodeDeploy and a load balancer.

Tutorial

How to deploy a serverless container with Azure Container Apps

Deploy a containerized service to Azure Container Apps with scale-to-zero, ingress, and revision-based updates.

Tutorial

How to publish a Docker image to a registry from CI

Build a Docker image in CI and push it to a container registry with proper tags and authentication.

Tutorial

How to sign container images with Cosign

Sign and verify container images with Cosign keyless signing to secure your software supply chain.

Blueprints11

Blueprint

Physical Servers to Kubernetes Blueprint

Modernize applications running on bare-metal physical servers into containers orchestrated by Kubernetes, with phased discovery and re-platforming.

Blueprint

Lift-and-Shift to Re-Platform Blueprint

Take rehosted cloud workloads from a lift-and-shift phase and progressively re-platform them onto managed and serverless services for better cost and operations.

Blueprint

Monolithic VM Application to Containers Blueprint

Containerize a large monolithic application running on virtual machines, externalizing state and config to run reliably on a container platform.

Blueprint

Self-Managed Kubernetes to Amazon EKS Blueprint

Migrate a self-managed (kubeadm) Kubernetes cluster to Amazon EKS, offloading control-plane operations while preserving workloads and GitOps.

Blueprint

Self-Managed Kubernetes to Google GKE Blueprint

Migrate a self-managed Kubernetes cluster to Google Kubernetes Engine, optionally Autopilot, to offload node and control-plane operations.

Blueprint

Cloud Foundry to Kubernetes Blueprint

Migrate applications from a Cloud Foundry PaaS to Kubernetes, converting buildpacks and manifests into container images and declarative deployments.

Blueprint

Docker Swarm to Amazon ECS Blueprint

Migrate containerized services from Docker Swarm to Amazon ECS on Fargate, translating Compose-style stacks into task definitions and services.

Blueprint

On-Prem VMs to GKE with Migrate to Containers Blueprint

Modernize on-premises VMs directly into containers on Google GKE using Migrate to Containers, skipping a separate VM rehosting step.

Blueprint

Java EE on WebSphere to Spring Boot Blueprint

Migrate Java EE applications off WebSphere onto Spring Boot with embedded servers, externalized config, and container-native packaging.

Blueprint

.NET Framework to .NET 8 Modernization Blueprint

Migrate legacy .NET Framework applications to cross-platform .NET 8 with the SDK project format, modern hosting, and EF Core.

Blueprint

VM-Deployed App to Cloud-Native Blueprint

Re-platform a VM-deployed backend application to a cloud-native architecture with containers, managed services, and twelve-factor config.

Playbooks9

Playbook

Kubernetes Platform Adoption Playbook

A phased program to stand up a production-grade internal Kubernetes platform and onboard application teams onto golden paths.

Playbook

Container Platform Migration Playbook

A phased program to migrate workloads from VMs and Docker Compose onto a managed container platform with standardized build and deploy.

Playbook

Java EE to Spring Boot Program Playbook

An enterprise program for migrating Java EE applications to Spring Boot with modern build, runtime, and deployment practices.

Playbook

.NET Framework to .NET Modernization Program Playbook

A portfolio program for moving .NET Framework applications to modern cross-platform .NET with containerized, cloud-ready deployment.

Playbook

Node.js Major-Version Upgrade Program Playbook

A fleet-wide program for upgrading Node.js services across major runtime versions with dependency and ESM modernization.

Playbook

Java 8 to 17 Runtime Modernization Program Playbook

A fleet program to upgrade Java services from Java 8 to a modern LTS runtime with build, module, and dependency modernization.

Playbook

Software Supply Chain Security Program Playbook

A program to secure the build-to-deploy pipeline with SBOMs, artifact signing, provenance attestation, and SLSA-aligned controls.

Playbook

Container Migration Program Playbook

A program to migrate VM-based and legacy applications into containers with hardened images, registries, and orchestrated deployment.

Playbook

Model Serving Migration Playbook

A phased program to migrate ML model serving from bespoke endpoints to a standardized, autoscaling, observable serving platform.

Comparisons11

Comparison

EKS vs GKE

Amazon EKS and Google GKE are the leading managed Kubernetes services. GKE is more automated and mature; EKS offers deepest AWS integration.

Comparison

ECS vs EKS

Amazon ECS is AWS's simpler proprietary container orchestrator; EKS is managed Kubernetes. ECS trades portability for ease; EKS trades simplicity for the open ecosystem.

Comparison

Fargate vs Lambda

AWS Fargate runs serverless containers; AWS Lambda runs serverless functions. Fargate suits long-running services; Lambda suits short, event-driven work.

Comparison

Docker vs Podman

Docker is the original container engine with a central daemon; Podman is a daemonless, rootless-friendly, drop-in alternative with strong Kubernetes affinity.

Comparison

Kubernetes vs Nomad

Kubernetes is the dominant, feature-rich container orchestrator; HashiCorp Nomad is a simpler, lightweight scheduler for containers and non-containerized workloads.

Comparison

Helm vs Kustomize

Helm packages Kubernetes apps as templated, versioned charts; Kustomize overlays plain YAML without templates. Helm suits distribution; Kustomize suits simple in-house config.

Comparison

VMs vs Containers

Virtual machines virtualize hardware with a full guest OS; containers virtualize the OS, sharing the host kernel. VMs offer stronger isolation; containers offer density and speed.

Comparison

Serverless vs Containers

Serverless abstracts away infrastructure and scales to zero; containers give portable, full control over the runtime. The choice balances operational simplicity against flexibility.

Comparison

Cloud Run vs Cloud Functions

Google Cloud Run runs serverless containers; Cloud Functions runs serverless functions. Cloud Run offers more flexibility; Cloud Functions is simpler for event glue.

Comparison

Traefik vs NGINX

Traefik is a cloud-native reverse proxy with automatic service discovery; NGINX is a mature, high-performance web server and proxy with manual configuration.

Comparison

containerd vs CRI-O

containerd and CRI-O are the two main Kubernetes container runtimes. containerd is general-purpose and widely adopted; CRI-O is minimal and Kubernetes-only by design.

FAQs14

FAQ

What is a container?

A container is a lightweight, standalone unit that packages an application together with its dependencies, libraries, and configuration so it runs con...

FAQ

What is the difference between a Docker container and a virtual machine?

A virtual machine (VM) virtualizes hardware and runs a full guest operating system on top of a hypervisor, so each VM carries its own kernel and is he...

FAQ

What is Kubernetes?

Kubernetes is an open-source platform for automating the deployment, scaling, and operation of containerized applications. It groups containers into l...

FAQ

What is the difference between a Kubernetes pod and a container?

A container is a single packaged process, while a pod is the smallest deployable unit in Kubernetes and can hold one or more containers that share the...

FAQ

When should I use Kubernetes?

Kubernetes makes sense when you run many containerized services that need automated scaling, self-healing, rolling updates, and consistent deployment ...

FAQ

What is a sidecar container?

A sidecar is a secondary container that runs alongside the main application container in the same pod to extend or support it without changing the app...

FAQ

What is a Kubernetes ingress controller?

An ingress controller is a component that implements Kubernetes Ingress resources, routing external HTTP and HTTPS traffic to services inside the clus...

FAQ

What is a container image?

A container image is a read-only template that contains everything needed to run an application: code, runtime, libraries, environment variables, and ...

FAQ

What is a container registry?

A container registry is a storage and distribution system for container images, allowing them to be pushed after a build and pulled at deployment time...

FAQ

What is container orchestration?

Container orchestration is the automated management of the lifecycle of containers across a cluster of machines, including scheduling, scaling, networ...

FAQ

What is a Kubernetes namespace?

A namespace is a way to divide a single Kubernetes cluster into multiple virtual clusters, providing a scope for names and a boundary for resources. N...

FAQ

What does cloud native mean?

Cloud native describes an approach to building and running applications that fully exploits the elasticity, automation, and managed services of the cl...

FAQ

What is a Kubernetes service?

A Kubernetes Service is an abstraction that gives a stable network identity and address to a dynamic set of pods, since pods are ephemeral and their I...

FAQ

What is the Twelve-Factor App methodology?

The Twelve-Factor App is a set of principles for building cloud-native, portable, and scalable software-as-a-service applications. Key factors include...

Glossaries19

Glossary

Container

A container is a lightweight, isolated unit that packages an application together with its dependencies and runs as an isolated process on a shared host operating system kernel.

Glossary

Container Image

A container image is an immutable, read-only template containing an application and its dependencies, packaged as ordered filesystem layers from which running containers are created.

Glossary

Container Registry

A container registry is a service that stores, versions, and distributes container images, allowing clients to push built images and pull them for deployment.

Glossary

Pod

A pod is the smallest deployable unit in Kubernetes, consisting of one or more tightly coupled containers that share a network namespace, storage volumes, and lifecycle.

Glossary

Deployment (Kubernetes)

A Kubernetes Deployment is a controller that declaratively manages a set of identical pods, handling rollouts, rollbacks, and scaling by maintaining the desired number of replicas.

Glossary

ReplicaSet

A ReplicaSet is a Kubernetes controller that ensures a specified number of identical pod replicas are running at all times, recreating pods that fail or are deleted.

Glossary

StatefulSet

A StatefulSet is a Kubernetes controller for stateful applications that provides pods with stable, unique identities, ordered deployment and scaling, and persistent per-pod storage.

Glossary

DaemonSet

A DaemonSet is a Kubernetes controller that ensures a copy of a specified pod runs on every (or a selected subset of) node in the cluster, commonly used for node-level agents.

Glossary

Namespace (Kubernetes)

A Kubernetes namespace is a virtual partition within a cluster that scopes resource names and enables isolation, access control, and resource quotas across teams or environments.

Glossary

Ingress

Ingress is a Kubernetes resource that defines rules for routing external HTTP and HTTPS traffic to internal services, typically based on hostnames and URL paths.

Glossary

Service (Kubernetes)

A Kubernetes Service is an abstraction that exposes a logical set of pods as a single stable network endpoint, providing service discovery and load balancing across them.

Glossary

ConfigMap

A ConfigMap is a Kubernetes object that stores non-confidential configuration data as key-value pairs, decoupling configuration from container images so applications can be configured per environment.

Glossary

Secret (Kubernetes)

A Kubernetes Secret is an object for storing and distributing small amounts of sensitive data, such as passwords, tokens, and keys, to pods with tighter handling than ordinary configuration.

Glossary

Helm Chart

A Helm chart is a packaged, templated, and versioned collection of Kubernetes manifests that Helm uses to install, upgrade, and manage an application as a single releasable unit.

Glossary

Operator Pattern

The Operator pattern is a Kubernetes approach that encodes operational knowledge for a specific application into custom controllers and custom resources, automating tasks like deployment, upgrades, backup, and failover.

Glossary

Control Plane (Kubernetes)

The control plane is the set of Kubernetes components that manage the cluster's overall state, making global decisions such as scheduling and responding to events to drive the cluster toward its desired state.

Glossary

Kubelet

The kubelet is the primary node agent in Kubernetes that runs on every worker node, ensuring the containers described in the pods assigned to that node are running and healthy.

Glossary

Horizontal Pod Autoscaler

The Horizontal Pod Autoscaler is a Kubernetes controller that automatically adjusts the number of pod replicas in a workload based on observed metrics such as CPU utilization or custom metrics.

Glossary

Persistent Volume

A persistent volume is a Kubernetes resource representing a piece of durable storage in the cluster whose lifecycle is independent of any individual pod, allowing data to survive pod restarts and rescheduling.