devops

What Is Keycloak and How Does It Work?

Learn what Keycloak is, how its login and SSO flow works, and how realms, clients, users, roles, LDAP federation, identity brokering, OIDC and SAML fit together.

Deepak Prasad12 min read
devops

How to Reset Keycloak Admin Password and Recover Access

Reset a lost Keycloak admin password with bootstrap-admin user, repair the permanent administrator, and remove OTP lockout with bootstrap-admin service when the Admin Console is unreachable.

Deepak Prasad9 min read
devops

Keycloak Bootstrap Admin: Create the Initial Admin User

Create Keycloak’s first administrator in the master realm with KC_BOOTSTRAP_ADMIN_USERNAME, the Welcome Page, or bootstrap-admin before the first server start.

Deepak Prasad8 min read
devops

Keycloak Service Accounts: Client Credentials Flow for Machine-to-Machine Auth

Enable Keycloak service accounts and request client_credentials tokens for machine-to-machine auth—assign roles, fix role intersection with client scopes, call orders-api with curl, and troubleshoot invalid_client on …

Deepak Prasad12 min read
devops

Keycloak Realms Explained: Isolation, Multi-Tenancy, and the Master Realm

Learn what a Keycloak realm contains, how realm isolation differs from groups and Organizations, when to add another realm, and why the master realm is for administration—not application users.

Deepak Prasad12 min read
devops

Move Files Between Git Repositories and Preserve History

Move selected files or directories from one Git repository into an existing target repository with git filter-repo, then merge the filtered history without losing commit messages, authors, or dates.

Steve Alila13 min read
devops

CDC Tools for Snowflake: Architecture & Technical Comparison

Compare seven CDC approaches for Snowflake by capture architecture, destination apply, schema evolution, backfill behavior, and operational ownership — not connector count alone.

Deepak Prasad14 min read
devops

Agentic Software Factory Platforms: Architecture & Technical Comparison

Technical comparison of nine agentic software factory platforms by architecture — context, work intake, orchestration, governance, and measurement — not a ranked vendor list.

Deepak Prasad18 min read
devops

Fix Terraform S3 BucketAlreadyExists and BucketAlreadyOwnedByYou

Fix Terraform S3 CreateBucket 409 errors — tell BucketAlreadyExists from BucketAlreadyOwnedByYou, understand the global bucket namespace, import an existing bucket into state, or choose a new unique bucket name.

Deepak Prasad8 min read
devops

Fix Terraform S3 Backend Error Acquiring State Lock

Fix Terraform Error acquiring the state lock on an S3 remote backend — tell S3 native .tflock locking apart from legacy DynamoDB locks, read lock metadata, clear stale locks safely, and fix backend and IAM settings.

Deepak Prasad9 min read
devops

Fix Terraform AWS ExpiredToken Session Errors

Fix Terraform AWS ExpiredToken errors caused by expired STS credentials, stale AWS_SESSION_TOKEN variables, or IAM Identity Center sessions. Diagnose the active credentials and refresh them correctly.

Deepak Prasad9 min read
devops

Deploy an EKS Cluster on AWS with Terraform

Provision a minimal Amazon EKS cluster with Terraform using the terraform-aws-modules VPC and EKS modules, a managed node group on Kubernetes 1.36, and kubectl verification on Ubuntu.

Omer Cakmak16 min read
devops

Fix kubectl Unauthorized After Terraform EKS Apply

Fix kubectl Unauthorized after Terraform EKS apply — confirm the AWS identity behind kubectl, list EKS access entries, and grant cluster access with enable_cluster_creator_admin_permissions or access_entries on …

Omer Cakmak10 min read
devops

Fix Terraform AWS UnauthorizedOperation IAM Errors

Fix Terraform AWS UnauthorizedOperation on Ubuntu — confirm which IAM identity runs plan and apply, decode the authorization failure message with the AWS CLI, read the denied API action, and request or attach the missing …

Deepak Prasad7 min read
devops

Fix Terraform Destroy DependencyViolation on AWS VPC

Fix Terraform destroy DependencyViolation on AWS VPC — find subnet ENI and gateway blockers with the AWS CLI, recover when child resources were removed from state with terraform import, and destroy in dependency order.

Deepak Prasad10 min read
devops

Fix Terraform AWS Provider: No Valid Credential Sources Found

Reproduce and fix Terraform AWS provider No valid credential sources found on Ubuntu — shared credentials file, environment variables, named profiles, aws login export-credentials, IAM Identity Center SSO, EC2 instance …

Deepak Prasad10 min read
devops

Provision AWS EC2 Instances with Ansible Playbooks

Provision AWS EC2 instances with Ansible using amazon.aws.ec2_instance. Create a security group, launch and tag Ubuntu instances, and start, stop, query, and terminate EC2 resources.

Deepak Prasad14 min read
devops

Setup Kubernetes Cluster on AWS EC2 with kubeadm

Build a two-node kubeadm cluster on Ubuntu EC2 with containerd and Calico, open the right security group ports, join a worker, and deploy nginx to verify scheduling.

Omer Cakmak20 min read
devops

Trivy vs Grype: Container Vulnerability Scanner Comparison

Compare Trivy and Grype on one pinned Docker image digest, explain why CVE counts differ, scan SBOMs with Syft and Trivy, run Trivy IaC checks, and set policy-based CI gates.

Deepak Prasad17 min read
devops

Rootless Podman Quadlet with systemd User Services

Run Podman Quadlet as a normal Linux user — ~/.config/containers/systemd paths, systemctl --user, journalctl --user, admin-provisioned units under /etc/containers/systemd/users, linger for boot and logout persistence, …

Deepak Prasad12 min read
devops

Podman Volumes: Create, Mount, Backup and Manage Persistent Storage

Create and manage Podman volumes — named vs anonymous storage, mount with -v or --mount, copy-up behavior, export and import backups, host mount and unmount, prune differences on Podman 5 vs 6, and volume lifecycle …

Deepak Prasad15 min read
devops

Podman vs Docker: Key Differences and When to Use Each

Compare Podman and Docker for Linux teams — architecture, CLI and image compatibility, rootless models, Compose, networking, Quadlet, and when each engine fits without assuming a universal winner.

Deepak Prasad12 min read
devops

What Is Podman? How It Works and When to Use It

Learn what Podman is, how the daemonless OCI container engine works on Linux, what you can run rootless, and when Podman fits better than Docker or Kubernetes for your workloads.

Deepak Prasad11 min read
devops

`podman update`: Change an Existing Container

Change an existing Podman container on Podman 5.8.2 with podman update — CPU, memory, swap, PIDs, cpuset, health checks, environment, ulimits, and restart policy without recreating the object, plus when limits apply …

Deepak Prasad11 min read
devops

Fix Rootless Podman Cannot Bind to Port 80 or 443

Fix rootless Podman port 80 and 443 permission denied — reproduce pasta and rootlessport errors, understand ip_unprivileged_port_start, and choose sysctl tuning, a reverse proxy, or a firewall redirect without going …

Deepak Prasad10 min read
devops

Podman User Namespaces and UID/GID Mapping Explained

How Podman maps container UIDs and GIDs to host IDs — inspect rootless uid_map, compare --userns host, keep-id, nomap, and auto, resolve keep-id vs auto conflicts, and choose the right mode for bind mounts.

Deepak Prasad15 min read
devops

`podmansh`: Confine Linux Users to a Podman Container Shell

Use podmansh as a login shell so Linux users land in a Quadlet-defined Podman container — create locked and persistent confinement levels, test session lifecycle, configure podmansh timeout, and recover from a broken …

Deepak Prasad15 min read
devops

Podman Troubleshooting Guide: Common Errors and Fixes

Route Podman errors to the right fix on Podman 5.8.2 — capture podman version and podman info, run first-step diagnostics, match literal symptoms from exit codes and registry TLS to storage, network, rootless, and …

Deepak Prasad11 min read
devops

Podman Storage Location and `storage.conf` Explained

Find where Podman stores images, containers, and volumes with podman info — graphroot, runroot, volumePath, storage.conf precedence, overlay vs fuse-overlayfs, imagestore, rootless NFS limits, and safe graphroot …

Deepak Prasad12 min read
devops

Start, Stop and Restart Podman Containers

Start, stop, and restart Podman containers on Linux — graceful SIGTERM shutdown, kill vs stop, pause and unpause, podman wait, restart policies, and podman-restart.service after reboot with real command output.

Deepak Prasad12 min read