Generated by All in One SEO v4.9.3, this is an llms.txt file, used by LLMs to index the site.## Sitemaps - [XML Sitemap](https://devsecopsguru.in/sitemap.xml): Contains all public & indexable URLs for this website. ## Posts - [Kubernetes Pod Lab](https://devsecopsguru.in/kubernetes-pod-lab/) - [Kubernetes ETCD Lab](https://devsecopsguru.in/kubernetes-etcd-lab/) - Lab 1: The "Hello World" of Etcd (Direct Interaction) Goal: Understand how to talk to Etcd directly, bypassing the Kubernetes API. Prerequisites: A running Kubernetes cluster. 1: Find your Etcd credentials: Kubernetes locks Etcd down with mTLS. You need the certs to talk to it. # Standard kubeadm paths export CACERT="/etc/kubernetes/pki/etcd/ca.crt" export CERT="/etc/kubernetes/pki/etcd/server.crt" export KEY="/etc/kubernetes/pki/etcd/server.key" - [Kubernetes ETCD Quiz](https://devsecopsguru.in/kubernetes-etcd-quiz/) - Master Quiz: Etcd Architecture Data Consistency Score: 0/25 💾 Master Quiz: Etcd Architecture Validate your understanding of the Cluster's Memory, Raft Consensus, and Resilience. 🎉 Transaction Committed! Your Data Integrity: 0/25 Corrupted ↺ New Transaction - [Kubernetes Architecture Quiz](https://devsecopsguru.in/kubernetes-architecture-quiz/) - Master Quiz: Kubernetes Architecture Cluster State Score: 0/25 ☸️ Master Quiz: Kubernetes Architecture Validate your knowledge of the Control Plane, Worker Nodes, and Internal Components. 🎉 Check Complete! Your Cluster Health: 0/25 CrashLoopBackOff ↺ Restart Controller - [Kubernetes API-Server Quiz](https://devsecopsguru.in/kubernetes-api-server-quiz/) - Master Quiz: Kubernetes API Server Control Plane Score: 0/25 ☸️ Master Quiz: Kube-API Server Validate your knowledge of the Cluster's Brain, Security Gates, and Etcd communication. 🎉 Audit Complete! Your Control Plane Status: 0/25 Unauthenticated ↺ Restart Controller - [Kubernetes API-Server Lab](https://devsecopsguru.in/kubernetes-api-server-lab/) - Most of the labs only works on the Kubernetes and Linux Not on EKS, AKS, GKE. Lab 1: The "RESTful" Nature (Talking Directly to the Hub) Concept: The text states the API Server is the "Central Hub" that speaks standard HTTP. This lab bypasses kubectl abstraction to see the raw JSON. 1: Start a Proxy: - [The Container Runtime Quiz](https://devsecopsguru.in/the-container-runtime-quiz/) - Master Quiz: Container Runtimes Runtime Wars Score: 0/20 🔧 Master Quiz: Runtimes Docker vs. Containerd vs. CRI-O vs. Podman. Choose your engine. 🎉 Engine Status Your Performance: 0/20 Dockershim ↺ Restart Service - [The Container Runtime Lab](https://devsecopsguru.in/the-container-runtime-lab/) - Lab 1: Moving from Docker to Podman If you are on Linux (Fedora/CentOS/RHEL), try this to see how seamless the switch is. Install Podman: sudo dnf install -y podman Set the Alias: alias docker=podman Run a container (Notice no sudo!): docker run --rm -it alpine echo "I am running rootless!" Lab 2: Debugging K8s with - [Linux Systemd vs. Docker Init Quiz](https://devsecopsguru.in/linux-systemd-vs-docker-init-quiz/) - Master Quiz: Systemd vs Docker Init PID 1 Manager Score: 0/20 ⚙️ Master Quiz: Systemd vs Init Zombies, Signals, and the Private Bodyguard. 🎉 Process Terminated! Your Exit Code: 0/20 Zombie ↺ Reboot Container - [Linux Networking Quiz](https://devsecopsguru.in/linux-networking-quiz/) - Master Quiz: Linux Networking Data Flow Score: 0/20 🌐 Master Quiz: Linux Networking Bridges, iptables, and IPVS: The Plumbing of Containers. 🎉 Transmission Complete! Your Throughput: 0/20 Offline ↺ Re-Connect - [Linux Kernel Namespaces & Cgroups Quiz](https://devsecopsguru.in/linux-kernel-namespaces-cgroups-quiz/) - Master Quiz: Linux & Networking Kernel Mode Score: 0/20 🐧 Master Quiz: Linux & Networking Deep dive into Namespaces, Cgroups, PID 1, and IPVS. 🎉 Kernel Compile Complete! Your Architect Level: 0/20 User Space ↺ Reboot System - [Docker Debugging Cli Lab](https://devsecopsguru.in/docker-debugging-cli-lab/) - Lab 1: The "Resource Hog" Hunt Goal: Identify a container causing performance issues. Start a Stress Container: docker run -d --name heavy-load alpine sh -c "yes > /dev/null" (This command runs an infinite loop, eating CPU). Run Monitor: docker stats Observe: Look at the CPU column. You will see heavy-load hitting 100% CPU. Fix: Press - [Docker Debugging Cli Quiz](https://devsecopsguru.in/docker-debugging-cli-quiz/) - Master Quiz: Docker Debugging Diagnostics Score: 0/20 🔍 Master Quiz: Docker Debugging Stats, Inspect, Diff, and Top: The Investigator's Toolkit. 🎉 Investigation Closed! Your Diagnostic Skill: 0/20 Junior Admin ↺ Re-Examine - [Docker Cleaning Up Cli Quiz](https://devsecopsguru.in/docker-cleaning-up-cli-quiz/) - Master Quiz: Docker Cleanup Disk Usage Score: 0/20 🧹 Master Quiz: Docker Cleanup Garbage Collection, Pruning, and the "Nuclear Option." 🎉 System Cleaned! Your Efficiency: 0/20 Intern ↺ Run Prune - [Docker Cleaning Up Cli Lab](https://devsecopsguru.in/docker-cleaning-up-cli-lab/) - Lab 1: The "Junk Generator" (Visualize the problem) Check Space: docker system df (Note the numbers). Create Junk: Run a container: docker run -d --name junk-app alpine sleep 1000 Stop it: docker stop junk-app Pull an image: docker pull busybox Check Space Again: docker system df (Reclaimable space increased). Clean Up: docker system prune -f - [Docker Network Cli Quiz](https://devsecopsguru.in/docker-network-cli-quiz/) - Master Quiz: Docker Networks Ping Test Score: 0/20 🌐 Master Quiz: Docker Networks Connect, Isolate, and Debug container communications. 🎉 Connection Established! Your Network Status: 0/20 Offline ↺ Re-Connect - [Docker Network Cli Lab](https://devsecopsguru.in/docker-network-cli-lab/) - Lab 1: The "Two Worlds" (Isolation Test) Goal: Prove that networks are truly isolated. Create Networks: docker network create blue-net docker network create red-net Start Containers: docker run -d --name blue-box --network blue-net alpine sleep 1000 docker run -d --name red-box --network red-net alpine sleep 1000 Test Ping (Fail):docker exec -it blue-box ping red-box Result: - [Docker Volume Cli Lab](https://devsecopsguru.in/docker-volume-cli-lab/) - Lab 1: The "Magical Data" Test (Named Volumes) Create Volume: docker volume create magic-box Start Container 1: docker run -d --name writer -v magic-box:/data alpine sh -c "echo 'I was here' > /data/secret.txt && sleep 1000" Check Data: docker exec writer cat /data/secret.txt (Output: I was here) Destroy Container 1: docker rm -f writer Start - [Docker Volume Cli Quiz](https://devsecopsguru.in/docker-volume-cli-quiz/) - Master Quiz: Docker Volumes Storage Check Score: 0/20 📦 Master Quiz: Docker Volumes Test your knowledge on Persistence, Bind Mounts, and Data Security. 🎉 Data Saved! Your Persistence Score: 0/20 Intern ↺ Mount Again - [Docker Image Management Quiz](https://devsecopsguru.in/docker-image-management-quiz/) - Master Quiz: Image Management Build & Ship Score: 0/20 🐳 Master Quiz: Image Management Building, Pushing, and Securing Docker Images for the Supply Chain. 🎉 Deployment Ready! Your Mastery: 0/20 Intern ↺ Re-Build - [Docker Image Management Lab](https://devsecopsguru.in/docker-image-management-lab/) - Lab 1: The Smallest Website Create a folder: mkdir my-site and go inside it. Create index.html: Write Hello World in it. Create Dockerfile:DockerfileFROM nginx:alpine COPY index.html /usr/share/nginx/html/index.html Build: docker build -t tiny-site:v1 . Run: docker run -d -p 9999:80 tiny-site:v1 Test: Open http://localhost:9999. Lab 2: The History Lesson Run: docker history tiny-site:v1 Observe: Look at - [Docker Daily Workflow Quiz](https://devsecopsguru.in/docker-daily-workflow-quiz/) - Master Quiz: Docker Workflow Workflow Score: 0/20 🐳 Master Quiz: Docker Workflow Run, Exec, Log, Stop: Managing the Container Lifecycle. 🎉 Session Complete! Your Operational Efficiency: 0/20 Intern ↺ New Session - [Docker Daily Workflow Lab](https://devsecopsguru.in/docker-daily-workflow-lab/) - Lab (Try it now!) Scenario: Run a web server, check it, and view the logs. Start: docker run -d -p 8080:80 --name lab-web nginx Verify: (See it running?) docker ps Check Logs: (You should see "Configuration complete...") docker logs lab-web Enter: docker exec -it lab-web bash (Now inside container) Type ls to see files. Type - [Dockerfile Writing Quiz](https://devsecopsguru.in/dockerfile-writing-quiz/) - Master Quiz: Dockerfile Build Process Score: 0/20 🐳 Master Quiz: Dockerfiles Architecting Infrastructure as Code: Layers, Cache, and Security. 🎉 Image Built Successfully! Your Build Status: 0/20 Junior Dev ↺ Rebuild Image - [Dockerfile Writing Lab](https://devsecopsguru.in/dockerfile-writing-lab/) - Lab 1: The Foundation (Basic Web Server) Goal: Create a simple Nginx server that displays a custom HTML page. This introduces FROM, COPY, and EXPOSE. Step 1: Create a file named index.html Hello from Docker! Step 2: Create a file named Dockerfile # Step 1: Base Image (The OS) FROM nginx:alpine # Step 2: Metadata - [Accessing & Slicing in Python Lists Quiz](https://devsecopsguru.in/accessing-slicing-in-python-lists-quiz/) - Master Quiz: List Accessing & Slicing Hallway Pass Score: 0/20 🔐 Master Quiz: Accessing & Slicing Open the lockers, slice the data, and master the [Start:Stop:Step] logic. 🎉 Class Dismissed! Your Grade: 0/20 Freshman ↺ Retake Exam - [Accessing & Slicing in Python Lists Lab](https://devsecopsguru.in/accessing-slicing-in-python-lists-lab/) - Lab 1: The Reverser Goal: Reverse a string using list slicing logic. text = "DevSecOps" # Strings support slicing too! reversed_text = text[::-1] print(reversed_text) # Output: spOceSveD Lab 2: The Data sampler Goal: Extract the first 3 items and the last 3 items. data = [10, 20, 30, 40, 50, 60, 70, 80] first_three = - [Python Lists Quiz](https://devsecopsguru.in/python-lists-quiz/) - Master Quiz: Python Lists Smart Inventory Score: 0/20 📦 Master Quiz: Python Lists Manage the Smart Warehouse: Arrays, Pointers, and Big O Complexity. 🎉 Inventory Check Complete! Your Efficiency: 0/20 Novice ↺ Restock - [Python Lists Lab](https://devsecopsguru.in/python-lists-lab/) - Lab 1: User Access Management (The "Admin" Scenario) Scenario: You are a System Administrator. You have a list of active employees, and you need to onboard new hires and remove employees who have left the organization. Concepts Covered: .append(), .remove(), if/else logic. # 1. Current Active Users List active_users = ["raj_admin", "priya_dev", "amit_ops", "sara_test"] # - [Python ASCII & Unicode Quiz](https://devsecopsguru.in/python-ascii-unicode-quiz/) - Master Quiz: ASCII & Unicode Code Points Score: 0/20 🌐 Master Quiz: ASCII & Unicode Test your knowledge on Character Encoding, Ordinals, and the Universal Standard. 🎉 Translation Complete! Your Encoding Proficiency: 0/20 Novice ↺ Re-Encode - [Python ASCII & Unicode Lab](https://devsecopsguru.in/python-ascii-unicode-lab/) - Lab: The "Hidden Numbers" Workshop Objective: Understand how computers store text and manipulate characters using ord() (to number) and chr() (to text). Experiment 1: The "Secret Decoder" Ring (Caesar Cipher) Goal: Create a simple encryption script by shifting ASCII values. Scenario: You want to send a secret message by shifting every letter forward by 1 - [Python r-strings Quiz](https://devsecopsguru.in/python-r-strings-quiz/) - Master Quiz: Raw Strings Regex Mode Score: 0/20 📜 Master Quiz: Raw Strings Taming the 'Backslash Plague' in File Paths and Regular Expressions. 🎉 Pattern Matched! Your Raw Accuracy: 0/20 Novice ↺ Re-compile - [Python r-strings Lab](https://devsecopsguru.in/python-r-strings-lab/) - Experiment 1: The "Broken Path" Scenario Goal: Understand how standard strings corrupt Windows file paths and how raw strings fix them. Step 1: Run the "Buggy" Code Copy and run the following code. We are trying to print a folder path: C:\new\tables. # ❌ The Wrong Way # Python sees \n (newline) and \t (tab) - [Python Escape Characters Quiz](https://devsecopsguru.in/python-escape-characters-quiz/) - Master Quiz: Escape Characters System Check Score: 0/20 \_ Master Quiz: Escape Characters Identify the hidden signals, secure the shell, and escape the matrix. 🎉 Check Complete! Sanitization Status: 0/20 Guest ↺ Re-Authenticate - [Python Escape Characters Lab](https://devsecopsguru.in/python-escape-characters-lab/) - Lab: Try it Yourself! Open a Python terminal or any online compiler and run this code: # Lab 1: The messy vs clean string print("Name: DevSecOps Guru\nRole: Architect\tLocation: India") # Lab 2: Handling quotes print("He said, \"Learning DevSecOps is 100% worth it!\"") # Lab 3: The backslash struggle print("The folder is located at C:\Program Files\Scripts") - [Python f-Strings Lab](https://devsecopsguru.in/python-f-strings-lab/) - Lab 1: The Resource Alert (Beginner) Scenario: You need to notify the team about high CPU usage. Task: Use an f-string to combine a server name and a usage percentage. Python server = "Prod-Web-01" cpu_usage = 94.5 # Task: Print "ALERT: Prod-Web-01 is at 94.5% capacity!" message = f"ALERT: {server} is at {cpu_usage}% capacity!" print(message) - [Python f-Strings Quiz](https://devsecopsguru.in/python-f-strings-quiz/) - [Python Indexing & Slicing Quiz](https://devsecopsguru.in/python-indexing-slicing-quiz/) - Master Quiz: Indexing & Slicing Slicer Score: 0/20 🔪 Master Quiz: Indexing & Slicing Master the art of extracting data with GPS precision using the [start:stop:step] formula. 🎉 Extraction Complete! Your Accuracy: 0/20 Novice ↺ Slice Again - [Python Indexing & Slicing Lab](https://devsecopsguru.in/python-indexing-slicing-lab/) - Lab 1: The Timestamp Extractor (Beginner) Scenario: Standard ISO logs start with a timestamp like 2026-01-29T14:30:05Z. You only need the Year and the Time. Task: Use slicing to extract the first 4 characters and characters from index 11 to 19. Python log_entry = "2026-01-29T14:30:05Z" # 1. Extract Year (Start to index 4) year = log_entry[:4] - [Python String Methods Quiz](https://devsecopsguru.in/python-string-methods-quiz/) - Master Quiz: String Methods Toolbox Score: 0/20 🛠️ Master Quiz: String Methods Open the toolkit: Test your skills with Sandpaper (.strip), Saws (.split), and Glue (.join). 🎉 Construction Complete! Your Craftsmanship: 0/20 Novice ↺ Re-Open Toolkit - [Python String Methods Lab](https://devsecopsguru.in/python-string-methods-lab/) - Lab: The Log Scrubber Try this in your Python terminal to see the power of chaining: # Raw, messy log entry from a server raw_log = " ERROR: Connection failed from IP 192.168.1.1 \n" # 1. Clean whitespace clean_log = raw_log.strip() # 2. Check if it's an error is_error = clean_log.startswith("ERROR") # 3. Extract the - [Python String Characteristics Quiz](https://devsecopsguru.in/python-string-characteristics-quiz/) - Master Quiz: String Characteristics String Logic Score: 0/20 🔒 Master Quiz: String Characteristics Deep dive into Immutability, Ordering, and Memory Efficiency. 🎉 Analysis Complete! Your Status: 0/20 Novice ↺ Re-Run Tests - [Python String Characteristics Lab](https://devsecopsguru.in/python-string-characteristics-lab/) - Lab: The "Immutable" Log Fixer Scenario: You have received a server log where the server name was recorded incorrectly as "server-production". Due to a policy change, all servers must start with "SRV-". Since you cannot change the string in place, you must reconstruct it. Task: Check if the string starts with "server". Create a new - [Python Creating Strings Lab](https://devsecopsguru.in/python-creating-strings-lab/) - Lab: The "Config Generator" Scenario: You need to create a configuration string for a database connection. The database password has special characters, and the directory path is on Windows. Task: Create the connection string correctly without errors. # Inputs db_host = "192.168.1.50" db_port = 5432 # Note: Raw string used here because of backslashes in - [Python Creating Strings Quiz](https://devsecopsguru.in/python-creating-strings-quiz/) - Master Quiz: Python Strings String Theory Score: 0/20 📜 Master Quiz: Python Strings Test your knowledge on Immutability, f-strings, and Escaping. 🎉 Text Processing Complete! Your Proficiency: 0/20 Novice ↺ Parse Again - [Python Mathematical Functions Quiz](https://devsecopsguru.in/python-mathematical-functions-quiz/) - Master Quiz: Python Math Calculator Score: 0/20 📐 Master Quiz: Mathematical Functions Test your precision on Trigonometry, NumPy, and Cryptographic security. 🎉 Calculation Complete! Your Precision: 0/20 Novice ↺ Recalculate - [Python Mathematical Functions Lab](https://devsecopsguru.in/python-mathematical-functions-lab/) - Lab: Build a Hypotenuse Calculator Scenario: You need to calculate the longest side of a triangle (hypotenuse) given two sides. This is used in game development (distance between players) and GPS calculations. import math def calculate_hypotenuse(): print("--- Hypotenuse Calculator ---") # Get user input try: side_a = float(input("Enter length of side A: ")) side_b = - [Python Type Casting Quiz](https://devsecopsguru.in/python-type-casting-quiz/) - Master Quiz: Type Casting Progress Score: 0/20 🎩 Master Quiz: Type Casting 20 Questions. Prove you know the difference between implicit and explicit!Green = Correct, Red = Incorrect. BeginnerDefinition What is the core definition of "Type Casting"? A) Changing the variable name B) Changing one data type into another C) Validating user input D) Encrypting - [Python Type Casting Lab](https://devsecopsguru.in/python-type-casting-lab/) - Lab 1: The "Log Parser" (String to Int) Scenario: You read a response time from a log file, but it has "ms" at the end. raw_time = "200ms" # Step 1: Clean the data (Remove 'ms') clean_time_str = raw_time.replace("ms", "") # Step 2: Cast to Integer time_int = int(clean_time_str) # Step 3: Logic if time_int - [Python NoneType Quiz](https://devsecopsguru.in/python-nonetype-quiz/) - Master Quiz: Python NoneType Void Check Score: 0/20 ∅ Master Quiz: NoneType Exploring the Singleton, null safety, and the "Absence of Value." 🎉 Analysis Complete! Your Null Safety Rating: 0/20 Novice ↺ Re-initialize - [Python NoneType Lab](https://devsecopsguru.in/python-nonetype-lab/) - Lab 1: The Singleton Proof Task: Prove that two different variables assigned to None share the same memory address. a = None b = None print(f"ID of a: {id(a)}") print(f"ID of b: {id(b)}") print(f"Are they the same? {a is b}") # Output: True (They are literally the same object) Lab 2: The Void Function Task: - [Python bool Quiz](https://devsecopsguru.in/python-bool-quiz/) - Master Quiz: Python Complex Numbers Complex Mastery Score: 0/20 🌌 Master Quiz: Complex Numbers Exploring the 2D Coordinate system, cmath, and 'j' syntax. 🎉 Vector Analysis Complete! Your Domain Knowledge: 0/20 Novice ↺ Retake Quiz - [Python bool Lab](https://devsecopsguru.in/python-bool-lab/) - Lab: The Logic Gatekeeper Run this script to see "Short-Circuiting" and "Truthy/Falsy" in action: # 1. Truthy/Falsy test test_items = [0, "", [], None, "Hello", 42] for item in test_items: print(f"Value: {item} | Boolean: {bool(item)}") # 2. Short-Circuit Security Logic def check_heavy_database(): print("!!! Database Query Running !!!") return True is_admin = False # Because is_admin - [Python complex Quiz](https://devsecopsguru.in/python-complex-quiz/) - Master Quiz: Python Complex Numbers Complex Mastery Score: 0/20 🌌 Master Quiz: Complex Numbers Exploring the 2D Coordinate system, cmath, and 'j' syntax. 🎉 Vector Analysis Complete! Your Domain Knowledge: 0/20 Novice ↺ Retake Quiz - [Python complex Lab](https://devsecopsguru.in/python-complex-lab/) - Lab: The Complex Navigator Try this code to understand how complex numbers handle coordinates: import cmath # 1. Define a point in 2D space point = 4 + 3j # 2. Calculate distance from origin (Magnitude) distance = abs(point) print(f"Distance: {distance}") # Result: 5.0 (3-4-5 triangle) # 3. Rotate the point by 90 degrees # - [Python Variables Quiz](https://devsecopsguru.in/python-variables-quiz/) - Master Quiz: Python Naming Conventions Progress Score: 0/20 🎩 Python Naming Conventions Prove your DevSecOps expertise! Answer 20 questions to earn your rank. Green = Correct, Red = Incorrect. BeginnerVariables What is the recommended style for variable names in Python? A) CamelCase B) PascalCase C) snake_case D) UPPER_CASE 💡 Explanation Snake Case (snake_case) is the - [Python Outputting Variables Lab](https://devsecopsguru.in/python-outputting-variables-lab/) - Lab 1: The "Legacy" vs "Modern" Challenge Try printing a server name and IP address using three methods. server = "Prod-DB-01" ip = "192.168.1.50" # Method 1: Comma (Lazy but works) print("Server:", server, "has IP:", ip) # Method 2: Concatenation (Harder) print("Server: " + server + " has IP: " + ip) # Method 3: - [Python Outputting Variables Quiz](https://devsecopsguru.in/python-outputting-variables-quiz/) - Master Quiz: Python Output & Variables Progress Score: 0/20 🎩 Master Quiz: Output & Variables 20 Questions. Prove your mastery of Python's printing mechanics.Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Closed Room" analogy, what is the role of print()? A) The Calculator B) The Camera & Projector C) The Actor D) The Memory - [Python Naming Conventions quiz](https://devsecopsguru.in/python-naming-conventions-quiz/) - Master Quiz: Python Naming Conventions (Full 20) Progress Score: 0/20 🎩 Master Quiz: Python Naming 20 Questions. Prove your DevSecOps Expertise!Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Dress Code" analogy, what corresponds to a "Sherwani or Suit"? A) Python Syntax (The Law) B) Conventions (Respectful & Clean) C) The Compiler (The Judge) D) - [Python Global vs. Local Variables Quiz](https://devsecopsguru.in/python-global-vs-local-variables-quiz/) - Master Quiz: Global vs. Local Variables Progress Score: 0/20 🎩 Master Quiz: Global vs. Local 20 Questions to test your Scope management skills.Green = Correct, Red = Incorrect. BeginnerAnalogy In the Office Analogy, what represents a Local Variable? A) The Public Notice Board B) The Building Security Guard C) Your Private Notebook D) The Elevator - [Python Global vs. Local Variables Lab](https://devsecopsguru.in/python-global-vs-local-variables-lab/) - Lab 1: The "Global" Keyword Switch Try to modify a configuration setting from inside a function. config_mode = "DEFAULT" def switch_to_debug(): global config_mode # Unlock access to the global variable config_mode = "DEBUG" print("Inside function: Mode switched to", config_mode) print("Before:", config_mode) switch_to_debug() print("After:", config_mode) # Output: After: DEBUG (It permanently changed) Lab 2: The "Shadowing" - [Python Assigning Values Quiz](https://devsecopsguru.in/python-assigning-values-quiz/) - Master Quiz: Python Assignments & Memory Progress Score: 0/15 🎩 Master Quiz: Assignments & Memory Prove your "Architect" level understanding of Python's memory model.Green = Correct, Red = Incorrect. BeginnerConceptual Analogy In Python, how is a variable best described compared to languages like C++? A) A storage box B) A sticky tag or label C) - [Python float Quiz](https://devsecopsguru.in/python-float-quiz/) - Master Quiz: Python Floats Float Mastery Score: 0/20 🌊 Master Quiz: Floating Points Test your knowledge on IEEE 754, Precision Errors, and Scientific Notation. 🎉 Research Complete! Your Precision Score: 0/20 Novice ↺ Retake Quiz - [Python float Lab](https://devsecopsguru.in/python-float-lab/) - Lab: The Floating-Point Trap Try running this in your Python terminal to see the logic gap: Step 1: Calculate 0.1 + 0.2. Step 2: Compare it to 0.3. Step 3: Use the decimal module to see the "true" value. Python import decimal # The Trap print(0.1 + 0.2 == 0.3) # Result: False # The - [Python Integer Quiz](https://devsecopsguru.in/python-integer-quiz/) - Master Quiz: Python Integers Int Mastery Score: 0/20 🔢 Master Quiz: Python Integers Test your knowledge on Unlimited Precision, Interning, and the "Smart Box" architecture. 🎉 Challenge Complete! Your Final Score: 0/20 Novice ↺ Retake Quiz - [Python Integer Lab](https://devsecopsguru.in/python-integer-lab/) - Lab1: Testing the "Magic Box" Copy and paste this into your Python terminal to see the magic: import sys # 1. Test the "Unlimited" growth big_number = 10**100 print(f"Google: {big_number}") # 2. Check memory size of a small vs large number small_num = 0 huge_num = 10**50 print(f"Size of 0: {sys.getsizeof(small_num)} bytes") print(f"Size of huge_num: - [Python Error Handling Quiz](https://devsecopsguru.in/python-error-handling-quiz/) - Master Quiz: Python Error Handling Progress Score: 0/20 🎩 Master Quiz: Error Handling 20 Questions. Test your ability to manage the "Fuse Box" of Python.Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Home" analogy, what represents the Try-Except block? A) The Appliance B) The Fuse Box C) The Power Surge D) The Electrician 💡 - [Python Input Quiz](https://devsecopsguru.in/python-input-quiz/) - Master Quiz: Python Input Handling Progress Score: 0/20 🎩 Master Quiz: Input Handling 20 Questions. Capturing data, Security Gates, and Avoiding the Type Trap.Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Security Gate" analogy, what represents the input() function? A) The Visitor B) The Guard (asking questions) C) The Register (Variable) D) The Apartment - [Python Input Lab](https://devsecopsguru.in/python-input-lab/) - Lab 1: Secure Port Checker Objective: Create a script that takes a port number and checks if it's a "Reserved" port (1-1024). Python # Step 1: Capture Input port_input = input("Enter the Port Number to scan: ") # Step 2: Input Validation & Type Casting try: port = int(port_input) # Convert string to integer if - [Python Virtual Environments Quiz](https://devsecopsguru.in/python-virtual-environments-quiz/) - Master Quiz: Python venv Progress Score: 0/20 🎩 Master Quiz: Virtual Environments 20 Questions. Prove you can manage your dependencies like an Architect!Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Restaurant" analogy, what represents a Virtual Environment? A) The Chef B) A Separate Kitchen C) The Groceries D) The Customer 💡 Explanation A Separate - [Python Virtual Environments Lab](https://devsecopsguru.in/python-virtual-environments-lab/) - 1. Create the Environment # Linux/macOS python3 -m venv my_devsecops_env 2. Activate it # Linux/macOS source my_devsecops_env/bin/activate # (You will see '(my_devsecops_env)' appear in your terminal prompt) 3. Install a library and verify pip install requests pip list # Only shows 'requests' and basic tools 4. Deactivate deactivate pip list # Shows your global system - [Python Memory Management Lab](https://devsecopsguru.in/python-memory-management-lab/) - Lab 1: Proving the "Same Address" Theory (Interning) x = 100 y = 100 print(f"Address of x: {id(x)}") print(f"Address of y: {id(y)}") print(f"Are they the same object? {x is y}") # Output: True (Because 100 is small and cached) a = 9999 b = 9999 print(f"Are big numbers same? {a is b}") # Output: False - [Python Assigning Values Lab](https://devsecopsguru.in/python-assigning-values-lab/) - Lab 1: The Swapper # Traditional way (Don't do this in Python) a = 5 b = 10 temp = a a = b b = temp print(a, b) # Pythonic way (Do this!) x = 50 y = 100 x, y = y, x print(f"x is now {x}, y is now {y}") Lab 2: - [Python Naming Conventions Lab](https://devsecopsguru.in/python-naming-conventions-lab/) - Lab 1: The "Linter" Test Install a linter and see it in action. Open VS Code. Install the "Pylint" extension. Write this code: MyVariable = 10 Hover over the variable. You will see a warning: "Variable name "MyVariable" doesn't conform to snake_case naming style." Lab 2: Refactoring Practice converting these names: employeeID -> employee_id calculate_Salary - [Python Variables Lab](https://devsecopsguru.in/python-variables-lab/) - Lab 1: The Keyword Test Open your Python shell and try to assign values to keywords. import keyword print(keyword.iskeyword("if")) # True # Try this: if = 10 # Result: SyntaxError Lab 2: Case Sensitivity Check score = 10 Score = 20 SCORE = 30 print(score, Score, SCORE) # Result: 10 20 30 (All stored separately) - [Python Dynamic Typing Quiz](https://devsecopsguru.in/python-dynamic-typing-quiz/) - Master Quiz: Dynamic Typing Progress Score: 0/20 🎩 Master Quiz: Dynamic Typing 20 Questions. Sticker vs. Box. Strong vs. Weak.Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Sticker vs. Box" analogy, what corresponds to Static Typing (Java/C++)? A) The Handheld Label Maker B) The Engraved Box ("Shoes Only") C) The Pizza D) The Shoe - [Python Dynamic Typing Lab](https://devsecopsguru.in/python-dynamic-typing-lab/) - Lab 1: The Shapeshifter (Dynamic Reassignment) Observe how the ID changes when the Type changes. var = 100 print(f"Value: {var}, Type: {type(var)}, ID: {id(var)}") var = "DevOps" print(f"Value: {var}, Type: {type(var)}, ID: {id(var)}") # Notice the ID is totally different. It's a new object. Lab 2: The "Type Guard" (Architect Pattern) How to safely handle - [Python Mutable vs. Immutable Types Quiz](https://devsecopsguru.in/python-mutable-vs-immutable-types-quiz/) - Master Quiz: Mutable vs Immutable Progress Score: 0/20 🎩 Master Quiz: Mutable vs Immutable 20 Questions. Understanding the "Certificate vs Google Doc" analogy.Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Certificate vs Google Doc" analogy, what is a String? A) A Google Doc (Mutable) B) A Printed Certificate (Immutable) C) A Sticky Note D) - [Python Mutable vs. Immutable Types Lab](https://devsecopsguru.in/python-mutable-vs-immutable-types-lab/) - Lab 1: The "Memory Address" Detective Prove that Strings are immutable. text = "DevOps" print(f"Original ID: {id(text)}") text = text + " Guru" print(f"New ID: {id(text)}") # Result: IDs are different. Python created a new string object. Lab 2: The "Tuple Trap" (The Loophole) Try to hack a tuple. # A Tuple containing a List - [Python Data Types Quiz](https://devsecopsguru.in/python-data-types-quiz/) - Master Quiz: Python Data Types Progress Score: 0/20 🎩 Master Quiz: Data Types 20 Questions. Prove you know your Containers!Green = Correct, Red = Incorrect. BeginnerAnalogy In the "Containers" analogy, what is a Tuple? A) A Backpack B) A Sealed Amazon Parcel C) A Necklace of Beads D) Water 💡 Explanation A Sealed Amazon Parcel. - [Python Data Types Lab](https://devsecopsguru.in/python-data-types-lab/) - Lab 1: The "Type Inspector" Check the types of various DevOps data points. api_response = {"status": 200, "body": "OK"} # dict server_list = ["10.0.0.1", "10.0.0.2"] # list is_secure = True # bool max_retries = 5 # int latency = 0.45 # float print(f"API is {type(api_response)}") print(f"Latency is {type(latency)}") Lab 2: The "Strong Typing" Crash Try - [Python Memory Management Quiz](https://devsecopsguru.in/python-memory-management-quiz/) - Master Quiz: Python Memory Management Progress Score: 0/20 🎩 Master Quiz: Memory Management 20 Questions based on the "Warehousing & Cleaning Crew" analogy.Green = Correct, Red = Incorrect. BeginnerAnalogy In the Warehouse analogy, what corresponds to the "Heap Memory"? A) The Shelves (where products live) B) The Catalog (sticky labels) C) The Cleaning Crew D) ## Pages - [DevSecOpsGuru.in](https://devsecopsguru.in/) - Tech should learn AWS(Draft) DevOps Essentials DevSecOps Essentials(Draft) Programming Python CI/CD Docker Kubernetes (Draft) Road Map to Become Cloud, DevOps, DevSecOps Architect Networking Linux Cloud Technology Essentials DevOps Essentials DevSecOps Essentials Programming Basics & Foundations AWS Essentials AWS-Cloud-Tech AWS Global Cloud Infrastructure: Regions, AZs, and Edge Locations AWS Shared Responsibility Model AWS Well-Architected Framework AWS Cloud Adoption Framework AWS Design Principles AWS Pricing & Cost Management AWS Support Plans AWS Disaster Recovery (DR) Strategies AWS-Compute AWS - Compute - EC2 AWS - Compute - Elastic Beanstalk AWS - Compute - Lambda DevOps Essentials 1. What DevOps really is 2. Life before DevOps 3. DevOps SDLC. 4. DevOps principles 6. DevOps Metrics 7. DevOps Leadership - People & Change leadership 8. Designing a DevOps transformation strategy. 9. DevSecOps - Security Embedded into DevOps 10. Site Reliability Engineering (SRE). DevSecOps Essentials 1. Foundations and Culture 2. Secure SDLC and Application Security Programming Basics & Foundations Python Python History Python Foundation Python Numeric Data Types Python Strings Data Type Python Lists Data Structures Python Operators Python Control Flow Python Dictionaries Python Functions Python Tuples Data Structure Python Sets & Frozensets Python Module Python Packages Git DevSecOps CI CD Pipeline GitHub Actions GitHub Actions Docker Mastery 1. The Compute Evolution Physical vs. Virtual vs. Containerization 2. Docker Internals 3. Docker Image Engineering 4. Registries and The Secure Supply Chain 5. Multi-Container Orchestration - Docker Compose 6. Docker Networking: The Connectivity Matrix 7. Docker Storage: The Persistence Layer 8. Docker Observability: The Eyes and Ears of Your Microservices 9. Hardening Security for Containers Writing Dockerfile Docker Commands Kubernetes Architect Program The Foundation Kernel Namespaces & Cgroups Linux Networking: Bridges, iptables, IPVS Systemd vs. Docker Init Container Fundamentals Container Runtime Interface Kubernetes Architecture Kubernetes Architecture Kube-API Server Etcd Kube-Scheduler Kube-Controller Manager Cloud Controller Manager Kubelet Container Runtime Kube-Proxy Show Remaining Articles ( 1 ) Collapse Articles Kubernetes Setting Up the Lab Kubernetes Setting Up the Lab Kubernetes Communication: Humans, Pipelines, and the API Server Creating Objects in Kubernetes Kubernetes Namespace Namespace & Multi-Tenancy k8s next Articles coming soon Pod Kubernetes Pods Kubernetes Pod Lifecycle Kubernetes Pod Pause Container Kubernetes Static Pods Kubernetes Multi-Container Patterns Kubernetes Pod Init Containers Kubernetes Pod Restart Policy Kubernetes Pod Health Probes Kubernetes Pod Requests and Limits Kubernetes Pod Security Contexts Show Remaining Articles ( 2 ) Collapse Articles - [About Me](https://devsecopsguru.in/rajkumar-aute/) - Hi Guys, I am Rajkumar Aute. Tech Geek & DevSecOps Specialist My fascination with technology began in childhood, tinkering with electrical and mechanical tool kits. That curiosity eventually led me to computers, but the real turning point happened in high school. My mobile phone got infected with a virus, and while I managed to fix ## My Templates - [Default Kit](https://devsecopsguru.in/?elementor_library=default-kit) ## kb - [Container Runtime Interface](https://devsecopsguru.in/kb/container-runtime-interface/) - The Container Runtime is the low-level software responsible for pulling container images from a registry (like Docker Hub or ECR), unpacking them, and running the application processes in an isolated environment. The CRI (Container Runtime Interface) Historically, Kubernetes was tightly coupled with Docker. To allow flexibility, Kubernetes introduced the CRI, a plugin interface. Kubelet calls - [Kubernetes Pod Pause Container](https://devsecopsguru.in/kb/kubernetes-pod-pause-container/) - (The invisible glue holding a Pod together) If you SSH into a worker node and run docker ps (or crictl ps), you will see many containers you didn't create named pause. What is a Pod really? We say a Pod is "one or more containers sharing a network." But how do they share it? If - [Kubernetes Pods](https://devsecopsguru.in/kb/kubernetes-pods/) - If you are new to Kubernetes, stop thinking about "Running Containers." In Kubernetes, we don't run containers directly. We run Pods. Think of a Pod as a "wrapper" or a "logical host." It is the smallest thing you can create and manage in Kubernetes. Just like a pea pod 🫛 can hold one or more peas, - [Kubernetes Pod Security Contexts](https://devsecopsguru.in/kb/kubernetes-pod-security-contexts/) - The Gatekeeper of Your Cluster’s Safety Kubernetes Security Context is simply that list of rules. It tells the container: "You can run, but only with these permissions, as this user, and don't touch those system files." It is the bridge between Kubernetes orchestration and the underlying Linux operating system security. Without this, your containers might default to having "Root" access, which is - [Kubernetes Pod Requests and Limits](https://devsecopsguru.in/kb/kubernetes-pod-requests-and-limits/) - Imagine you are booking a hotel room for a family trip. You tell the hotel manager, "I definitely need 2 beds" (this is your Request). But you also say, "If there’s extra space, I might use up to 4 beds, but no more" (this is your Limit). In Kubernetes, Requests are what a container is guaranteed to get. The cluster makes - [Kubernetes Pod Health Probes](https://devsecopsguru.in/kb/kubernetes-pod-health-probes/) - In distributed systems, ensuring that your application is running is not enough; you must ensure it is functioning correctly and capable of handling traffic. Kubernetes uses Probes essentially periodic health checks to monitor the state of containers. By configuring these probes, you automate the detection of failures and the recovery of services, ensuring high availability without - [Kubernetes Pod Restart Policy](https://devsecopsguru.in/kb/kubernetes-pod-restart-policy/) - In Kubernetes, the RestartPolicy is just like a set of instructions you give to Kubernetes on how to handle your Pods (containers) when they stop running or crash. It decides whether to restart them or leave them be. Think of the RestartPolicy like the "Auto-Start" feature in your car or bike. Always(Default for Deployments): Like a car with a "Start-Stop" - [Kubernetes Pod Init Containers](https://devsecopsguru.in/kb/kubernetes-pod-init-containers/) - In Kubernetes, InitContainers are specialized containers that run before your application starts. While your main application containers might run in parallel, InitContainers run sequentially and must complete successfully before the main application is even allowed to start. Does not support probs and lifecycle Why Use InitContainers? There are two primary reasons to use them: Dependencies and Security. 1. Waiting for Dependencies (The - [Kubernetes Multi-Container Patterns](https://devsecopsguru.in/kb/kubernetes-multi-container-patterns/) - Multi-Container Patterns Imagine a specialized surgery. You have the Lead Surgeon (Main Container) doing the actual operation. But they cannot do everything alone. They need an Anesthesiologist (Sidecar) to monitor the patient’s vitals continuously, and a Nurse (Ambassador) to fetch tools from the outside storage room so the surgeon doesn't have to leave the table. In Kubernetes, a Pod is that operation theatre. - [Kubernetes Static Pods](https://devsecopsguru.in/kb/kubernetes-static-pods/) - Static Pods bypass this entire "brain." They are pods that are managed directly by the Kubelet daemon on a specific node, without the API Server observing or managing the initial configuration. How Do They Work? The mechanism relies entirely on the filesystem of the node. The Manifest Folder: The Kubelet configuration file (/var/lib/kubelet/config.yaml) defines a specific directory path, usually staticPodPath. - [Kubernetes Pod Lifecycle](https://devsecopsguru.in/kb/kubernetes-pod-lifecycle/) - From Birth to Death Think of a Kubernetes Pod like a firecracker 🧨. It is designed to be lit, do its job (sparkle or bang), and then it is finished. You don't try to "fix" a burnt-out firecracker; you just get a new one. Unlike a Virtual Machine (VM) which you might reboot to fix, a Pod is designed - [Kube-Proxy](https://devsecopsguru.in/kb/kube-proxy/) - Role: The Network Proxy & Load Balancer Imagine the Kubernetes Cluster is a giant city. Pods are houses where people (applications) live. Services are the "Business Address" or "Phone Number" listed in the directory. Packets are the cars trying to reach those addresses. The Kube-Proxy is the Traffic Cop standing at every intersection (Node). When a car (packet) comes looking for a - [Container Runtime](https://devsecopsguru.in/kb/container-runtime/) - If the Kubelet is the Site Manager (holding the blueprints), the Container Runtime is the actual Worker or Machine that does the physical work. The Site Manager (Kubelet) says, "I need a building here!" The Worker (Runtime) says, "On it!" The Worker goes to the warehouse (Container Registry), picks up the materials (Image), unpacks them, and assembles the room (Container). The Site Manager doesn't know how to - [Kubelet](https://devsecopsguru.in/kb/kubelet/) - The Kubelet is the Site Manager present on every single worker node (construction site). The Head Office sends a blueprint (PodSpec) to the Site Manager. The Site Manager (Kubelet) reads the plan, calls the workers (Container Runtime like Docker/containerd), and ensures the building (Pod) is constructed exactly as planned. If a brick falls or a wall cracks (container crashes), - [Kubernetes Architecture](https://devsecopsguru.in/kb/kubernetes-architecture/) - If you don't understand the architecture, you cannot debug a broken cluster. Kubernetes follows a Client-Server Architecture. We divide the cluster into two main parts: The Control Plane (Master Node): The "Brain" that makes decisions. The Data Plane (Worker Nodes): The "Body" that does the actual work. https://kubernetes.io/docs/concepts/overview/components The Control Plane: Master Node Kubernetes Control - [Kube-Controller Manager](https://devsecopsguru.in/kb/kube-controller-manager/) - Imagine you have a very strict a Smart Air Conditioner (AC). Think of it as a Smart AC: You set the remote to 24°C (this is your Desired State). The AC constantly checks the room temperature (the Current State). If the room gets hot (26°C), the AC turns on to cool it down. If it gets too cold, it stops. - [Kube-Scheduler](https://devsecopsguru.in/kb/kube-scheduler/) - Kube-Scheduler: The "Decision Maker" & Cluster Planner Imagine you are checking into a massive hotel (the Cluster) with your family (the Pod). You go to the front desk. The receptionist (Kube-Scheduler) doesn't carry your bags or make your bed (that's the Kubelet's job). Instead, they look at your requirements: "We need a room with two - [Etcd](https://devsecopsguru.in/kb/etcd/) - Etcd Architecture: The "Memory" and "Truth" of the Cluster In the complex ecosystem of Kubernetes, Etcd plays the role of the brain's hippocampus it is the dedicated memory center. While the Control Plane components (like the API Server, Scheduler, and Controller Manager) act as the decision-makers and workers, Etcd is the notebook where every decision, - [Kube-API Server](https://devsecopsguru.in/kb/kube-api-server/) - The Kubernetes API Server (kube-apiserver) is effectively the "brain" and the "heart" of the Kubernetes control plane. It is the central management entity that intercepts all REST requests, validates them, and executes the logic bound to them. It is the only component in the Kubernetes architecture that communicates directly with the Etcd database. Key Characteristics to Remember Here are - [Cloud Controller Manager](https://devsecopsguru.in/kb/cloud-controller-manager/) - The Bridge Between Kubernetes and Your Cloud Imagine you are building a house (Kubernetes Cluster) on a specific plot of land (Cloud Provider like AWS or Azure). You need water and electricity from the city. The Cloud Controller Manager (CCM) is like the specialized contractor who knows exactly how to talk to the city officials - [Container Fundamentals](https://devsecopsguru.in/kb/container-fundamentals/) - Most people think "Container = Docker". But in 2026, that is wrong. Docker is just one player in a big team. To master Kubernetes, you need to understand the "Container Wars" and how to build images that are small, fast, and secure. The Container Runtime War Docker vs. Containerd vs. CRI-O vs. Podman Think of - [Kubernetes Architect Program](https://devsecopsguru.in/kb/kubernetes-architect-program/) - Kubectl commands referance https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands The Foundation: Infrastructure & Basics Focus: Setting the stage before running a single container. Linux & Networking Prerequisites Kernel Namespaces & Cgroups (The technology behind containers) Namespaces (Isolation): Virtual "walls" that define what a process can see (Network, Files, PIDs). Cgroups (Limits): A "meter" that defines how much a process can use (CPU, RAM, Disk I/O). Systemd vs. Docker Init PID - [Systemd vs. Docker Init](https://devsecopsguru.in/kb/systemd-vs-docker-init/) - In the world of Linux, someone has to be the boss. That boss is the Process ID 1 (PID 1). It starts first and manages everything else. Think as: Systemd: Think of Systemd as a Hotel manager. They manage the reception, housekeeping, kitchen, security, and electricity all at once. It’s heavy, powerful, and complex because running a whole - [Linux Networking: Bridges, iptables, IPVS](https://devsecopsguru.in/kb/linux-networking-bridges-iptables-ipvs/) - Linux networking is the backbone of modern containerization (like Docker) and orchestration (like Kubernetes). To understand how data moves between your computer and a container, or between two containers, you need to understand three core concepts: Bridges, iptables, and IPVS. Think of it as a busy corporate office building: Linux Bridge (The Switch/Hub): Think of this as the physical extension - [Kernel Namespaces & Cgroups](https://devsecopsguru.in/kb/kernel-namespaces-cgroups/) - Welcome to the very foundation of containerization! Before jumping into Docker or Kubernetes, it is crucial to understand what is happening "under the hood" of the Linux Operating System. Many people think containers are magic, but they are just standard Linux features put together in a smart way. Think as: Kernel Namespaces: Think of these as the "Walls" of a room in - [Namespace & Multi-Tenancy](https://devsecopsguru.in/kb/namespace-multi-tenancy/) - Namespace Think of a Kubernetes Namespace as a way to divide a single big cluster into multiple smaller, virtual clusters. It helps you organize your resources (like pods, services, and deployments) so that different teams or projects don't mess with each other. It provides scope for names meaning, you can have a "database" service in - [Writing Dockerfile](https://devsecopsguru.in/kb/writing-dockerfile/) - Basically, a Dockerfile is just a simple text file. It contains a list of instructions that the Docker engine reads to build a Docker image automatically. You don't need to memorize complex commands; you just need to understand the flow. It’s like writing a script to set up a new computer, but for a container. Think of - [Creating Objects in Kubernetes](https://devsecopsguru.in/kb/creating-objects-in-kubernetes/) - In Kubernetes (K8s), everything is an "Object." Think of an object as a persistent record of your intent. When you create an object, you are effectively telling the Kubernetes system, "Here is what I want my application to look like." This is called the Desired State. Once you create this record, Kubernetes works non-stop to ensure - [Kubernetes Communication: Humans, Pipelines, and the API Server](https://devsecopsguru.in/kb/kubernetes-communication-humans-pipelines-and-the-api-server/) - Think of a Kubernetes cluster as a highly secured, automated data center. You cannot just walk in and start moving servers around. You need a secure way to send instructions. Whether you are a human (Developer/DevOps Engineer) or a machine (CI/CD Pipeline), you never talk to the "cluster" directly. You talk to a specific gatekeeper - [Kubernetes Setting Up the Lab](https://devsecopsguru.in/kb/kubernetes-setting-up-the-lab/) - You cannot learn swimming by reading a book. You have to jump into the water. Similarly, you cannot learn Kubernetes just by reading. You need a cluster. Install kubectl to communicate with Kubernetes API. the three most effective ways to install kubectl on Windows, ranked from easiest to most manual. Winget (Recommended) If you are - [Linux](https://devsecopsguru.in/kb/linux/) - Linux is the most popular "Open Source" operating system in the world. Unlike Windows, which you buy, Linux is free and created by a community. It is the backbone of the internet most servers, supercomputers, and cloud platforms (like AWS and Azure) run on Linux. If you want a career in IT, DevOps, or Cloud, - [Docker Commands](https://devsecopsguru.in/kb/docker-commands/) - Here is a tiered guide to Docker CLI commands, from daily essentials to advanced troubleshooting. The Container Lifecycle build: Create the blueprint (Image). run: Build the house and move in (Container). stats / logs / exec: Live in and maintain the house (Observation & Troubleshooting). stop: Go on vacation (Graceful pause). rm: Demolish the house - [Python Strings Data Type](https://devsecopsguru.in/kb/python-string-data-type/) - A String is a sequence of characters used to store text. In Python, anything inside quotes is a string. It can contain letters, numbers, symbols, and whitespace. Imagine a String in Python like a necklace of beads. Each bead is a character (a letter, a number, or a symbol), and the string holds them all together in - [Python](https://devsecopsguru.in/kb/python/) - By reading these notes, you will gain knowledge tailored to your role, whether you are a beginner or practitioner focusing on Python Programming foundations. Note – This page contains a complete summary of the topics. To learn more about each topic, click on the (Expand), Topic-Heading, Image, or ‘Click Here’ hyperlink. Before reading this document, please read Programming Basics & Foundations You can - [Python Lists Data Structures](https://devsecopsguru.in/kb/python-lists-data-structures/) - Imagine you are managing a Smart Warehouse. Unlike traditional storage lockers where you must decide the box size beforehand (like Arrays in C/Java), this warehouse is magical. Dynamic Space: If you bring more items, the walls expand automatically. If you remove items, it shrinks to save space. Mixed Storage: You don't need separate shelves for separate items. You - [Networking](https://devsecopsguru.in/kb/networking/) - What is Networking? At its core, networking is just computers talking to each other. Just like humans need a language to speak and ears to listen, computers need cables (or Wi-Fi) and protocols (rules) to share information. Your laptop sends a "Request". Google's server sends a "Reply". This round trip is Networking. Think as: The Indian - [Python Numeric Data Types](https://devsecopsguru.in/kb/python-numeric-data-types-devsecops-guide/) - Handling numbers incredibly easy to understand not just how to use them, but how they work inside the computer. Think of Python numbers like smart containers. In older languages (like C or Java), you have to pick the "size" of your container (box) before putting a number in it. If the number is too big, - [Python Foundation](https://devsecopsguru.in/kb/python-foundation/) - Python Variables: Storing Data Imagine you are shifting your house. You have many items (Data), and you put them into boxes to organize them. To find your items later, you stick a label on each box, like "Kitchen," "Books," or "Toys." In traditional languages (like C), a variable is a Box. You put data inside - [Python History](https://devsecopsguru.in/kb/python-history/) - Optional Reading to know Python history. The history of Python is a fascinating journey of a "hobby project" that evolved into one of the world's most dominant programming languages. It spans over three decades, characterized by a philosophy of code readability and open-source collaboration. Here is the complete history of Python, broken down by eras - [7. Docker Storage: The Persistence Layer](https://devsecopsguru.in/kb/docker-7/) - Docker Storage defines where your files live deciding if they should disappear when the app closes (Ephemeral) or stay safe forever (Persistent). By default, containers are "stateless." This means they have a "bad memory" they forget everything once they are deleted. To give them a "long-term memory," we use different storage types: Writable Layer: Every - [Programming Basics & Foundations](https://devsecopsguru.in/kb/programming-basics-foundations/) - “Programming is not about typing; it is about thinking.” Programming is often misunderstood as just "typing fast like a hacker in movies." In reality, Programming is not about typing; it is about thinking. 1. What is Programming? Programming is simply the art of talking to a computer. Even though computers seem magical, they are not "smart" - [1. What DevOps really is](https://devsecopsguru.in/kb/devops-1-what-devops-really-is/) - Ask couple of people to define DevOps, and you’ll likely get many different answers. Here is how I see it. First and foremost, DevOps is not just a set of tools. It combines cultural philosophies, methodologies, practices, and a mindset to unite the entire team for building software and services. It utilises automation tools and - [Git](https://devsecopsguru.in/kb/git/) - Everything you need to know before you type your first command. 1. Git - The Time Machine for the Code Git is like a time machine for source code files. It is a "Distributed Version Control System" (DVCS) that keeps track of every change make to the project so you can look back, undo mistakes, - [AWS - Compute - Lambda](https://devsecopsguru.in/kb/aws-compute-lambda/) - 1. Lambda Coding machine on rent No Server Management: You only give the Code; AWS provides the Server. Event-Driven: The code runs Only when needed based on specific triggers. Pay-as-you-go: You pay only for the milliseconds the code actually runs. Simple Analogy: It is like an Electric Calling Bell. It doesn't consume power all day - [AWS Well-Architected Framework](https://devsecopsguru.in/kb/aws-well-architected-framework/) - Think as: "Building a House According to Government Safety Codes." Imagine you are constructing a big house (your application). You cannot just pile bricks and hope it stands. You need to follow architectural standards (building codes) to ensure: The AWS Well-Architected Framework is simply that set of "Building Codes" and "Checklists" provided by AWS. It - [DevSecOps CI CD Pipeline](https://devsecopsguru.in/kb/devsecops-ci-cd-pipeline/) - This document provides a quick glance at DevSecOps CI/CD Pipeline Read more to deepen your understanding of how to automate security within your delivery pipeline.Before reading this document, please read DevOps Essentials, DevSecOps Essentials and Git DevSecOps Pipeline is like a high-tech assembly line for software. While a traditional CI/CD pipeline focuses on speed (getting code - [AWS - Compute - EC2](https://devsecopsguru.in/kb/aws-compute-ec2/) - 1. Amazon EC2 - Elastic Compute Cloud EC2 is an IaaS (Infrastructure as a Service) solution where we have full control at the OS level by selecting the desired CPU, memory, and storage options. Think of Amazon EC2 as a "Custom-Built Office Space" in the sky. When you rent a physical office, you don't own - [AWS Essentials](https://devsecopsguru.in/kb/aws-essentials/) - By reading these notes, you will gain knowledge tailored to your role, whether you are a beginner or practitioner focusing on AWS Cloud technology foundations. Note – This page contains a complete summary of the topics. To learn more about each topic, click on the (Expand), Topic-Heading, Image, or ‘Click Here’ hyperlink. Before reading this document, please read Cloud Technology Essentials. AWS - [Road Map to Become Cloud, DevOps, DevSecOps Architect](https://devsecopsguru.in/kb/road-map-to-become-cloud-devops-devsecops/) - This roadmap guides you through the complete journey of becoming a Cloud Engineer, DevOps Engineer, and DevSecOps Architect. Networking Basics The foundation of your journey begins with understanding the physical and logical components of a network. Linux Basics Once you understand the network, you'll need to master the operating system that powers much of the - [Python Operators](https://devsecopsguru.in/kb/python-operators/) - Operators are the symbols that drive the logic of any programming language. They act as the engine for calculations, data manipulation, and decision-making. 1. Arithmetic Operators - Math These operators perform standard mathematical calculations. The Power of Modulus % The modulus operator is essential for logic, not just math. Even/Odd Check: If number % 2 - [Python Control Flow](https://devsecopsguru.in/kb/python-control-flow/) - Control Flow allows program to make decisions, execute different code paths based on data, and handle complex logic. 1. if, else Conditional Statement It is a block of code that only runs if a specific condition is met. Think of it like a fork in the road: "If the traffic light is red, stop. Otherwise, - [Python Dictionaries](https://devsecopsguru.in/kb/python-dictionaries/) - Dictionary (dict) is one of the most powerful and efficient data structures. Unlike Lists, which use numbers (indexes) to access data, Dictionaries use Keys. Think of a Real Dictionary: If you want to know the meaning of "Python", you look up the word "Python" (the Key) to find its definition (the Value). You don't read - [Python Functions](https://devsecopsguru.in/kb/python-functions/) - A function is a reusable block of code that performs a specific task. It only runs when it is "called." Input: Arguments. Process: Function Logic. Output: Return Value. 2. Why Functions Matter Reusability (DRY - Don't Repeat Yourself): Write the logic once, use it everywhere. Modularity: Break a complex 1000-line program into 10 small, manageable - [Python Tuples Data Structure](https://devsecopsguru.in/kb/python-tuples-data-structure/) - It is very similar to a List, but with one critical difference: it is Immutable (Unchangeable). Think of a List as a whiteboard (you can write, erase, and rewrite). A tuple is an ordered collection of elements stored in a single variable. It is defined using parentheses (). Key Characteristics: Immutable: You cannot add, remove, - [Python Sets & Frozensets](https://devsecopsguru.in/kb/python-sets-frozensets/) - Python Sets Set is a high-performance data structure derived from mathematical set theory. Unlike Lists (which are sequences), Sets are unordered collections designed for two specific purposes: enforcing uniqueness and performing mathematical comparisons. 1. Core Characteristics Unordered & Unindexed: Sets do not record element position. You cannot ask for my_set[0]. Note: Because they are unordered, - [Python Module](https://devsecopsguru.in/kb/python-module/) - Modules Is a ready template written by somebody. It can be imported and used in our programs. Types of modules Build in modules (preinstalled in Python) External modules (need to install using PIP) Python Console → When we run python command in the terminal it open REPL - Read Evaluate Print Loop. - [Python Packages](https://devsecopsguru.in/kb/python-packages/) - PIP Is a package manager for Python. We can install a module using PIP - [DevSecOps Essentials](https://devsecopsguru.in/kb/devsecops-essentials/) - By reading these notes, you will gain knowledge tailored to your role, whether you are a beginner or practitioner focusing on technical foundations or a manager looking to master DevSecOps leadership and strategy. Note – This page contains a complete summary of the topics. To learn more about each topic, click on the (Expand), Topic-Heading, Image, or ‘Click Here’ hyperlink. Before reading this document, - [DevOps Essentials](https://devsecopsguru.in/kb/devops-0-devops-essentials/) - 1. Culture (values, behaviours, leadership, trust) 2. Processes (Lean, Value Stream thinking, flow) 3. Collaboration (breaking silos, shared responsibility) 4. Mindset (continuous learning, experimentation) 5. Technical Practices (automation, CI/CD, reliability engineering) - [AWS Support Plans](https://devsecopsguru.in/kb/aws-support-plans/) - Think of it as: "Car Insurance & Roadside Assistance" - Imagine you own a car (your AWS Cloud environment). You need different levels of protection and help depending on how you use the car. Basic Plan (The Free Manual): This is like buying a car and getting just the Owner’s Manual. If the car breaks - [AWS Pricing & Cost Management](https://devsecopsguru.in/kb/aws-pricing-cost-management/) - Imagine AWS is like a massive hotel that also provides electricity (compute) and cupboards (storage). On-Demand: You walk into the hotel without a booking. You stay for one night, pay for one night, and leave. It’s flexible but costs the standard rate. Reserved Instances: You tell the hotel manager, "Sir, I will definitely stay here - [AWS Disaster Recovery (DR) Strategies](https://devsecopsguru.in/kb/aws-disaster-recovery-dr-strategies/) - Think as: Insurance for your digital house. Imagine you are running a very busy restaurant. RTO (Recovery Time Objective): If the power goes out, how long can you keep customers waiting before they leave? Is it 5 minutes or 1 hour? This is your "downtime tolerance." RPO (Recovery Point Objective): If your order system crashes, - [AWS Design Principles](https://devsecopsguru.in/kb/aws-design-principles/) - The Rules for Building Unbreakable Systems Think as: Building and Running a Massive, High-Tech Digital Shopping Mall. Imagine you are the owner of the world's biggest and smartest shopping mall. Scalability: If 10,000 customers suddenly rush in for a Diwali sale, you magically add more entry gates and counters instantly (Horizontal Scaling). When the rush - [AWS Cloud Adoption Framework](https://devsecopsguru.in/kb/aws-cloud-adoption-framework/) - Imagine you want to move your entire family and all your belongings from a small old house to a massive, high-tech smart villa. You cannot just throw everything in a truck and drive off; you need a plan. You need to think about money (Business), who does what packing (People), rules for the new house - [AWS Shared Responsibility Model](https://devsecopsguru.in/kb/aws-shared-responsibility-model/) - AWS Shared Responsibility Model: Who Secures What? When you move to the AWS Cloud, security becomes a partnership. You don't have to manage everything, but you can't ignore everything either. Simply put: AWS protects the hardware and the global infrastructure, and you protect your data and configurations. If AWS fails to secure the data center and a - [AWS Global Cloud Infrastructure: Regions, AZs, and Edge Locations](https://devsecopsguru.in/kb/aws-global-cloud-infrastructure/) - Think as: A Massive International Pizza Chain (e.g., Domino's) Imagine AWS is the world’s biggest pizza delivery company. To serve fresh pizza (data) to everyone, everywhere, they need a smart structure: AWS Region = The Central Kitchens in a Big City: Think of a Region as a major city (like Mumbai or London). In this - [Docker Mastery](https://devsecopsguru.in/kb/docker-mastery/) - By reading these notes, you will gain knowledge tailored to your role, whether you are a beginner or practitioner focusing on technical foundations or a manager looking to master Docker and Containerization Technology. Note – This page contains a complete summary of the topics. To learn more about each topic, click on the (Expand), Topic-Heading, Image, or ‘Click Here’ hyperlink. Before reading this document, - [5. Multi-Container Orchestration - Docker Compose](https://devsecopsguru.in/kb/docker-5/) - Docker Compose is a tool that allows you to define and run entire "stacks" (like a web app + its database) using a single YAML configuration file. The Orchestra Conductor Imagine an orchestra. Without a Conductor (Docker Compose), the violinist, drummer, and pianist would all start playing at different times, creating noise. The Conductor gives - [9. Hardening Security for Containers](https://devsecopsguru.in/kb/docker-9/) - For those new to security, hardening is about "Less is More." By reducing what a container can do, you reduce what a hacker can steal. Rootless Mode: Traditionally, Docker runs with "Admin" (Root) powers. Rootless mode lets Docker run as a standard user. If the container is hacked, the hacker doesn't get control of your - [8. Docker Observability: The Eyes and Ears of Your Microservices](https://devsecopsguru.in/kb/docker-8/) - Observability isn't just "monitoring"; it’s the ability to understand what’s happening inside a container by looking at its external outputs. Think of it as a Health Checkup: Logs (The Voice): What the patient says. "My stomach hurts since 10:00 AM." (Detailed events). Metrics (The Pulse): The heart rate and blood pressure. "Heart rate is 120 - [6. Docker Networking: The Connectivity Matrix](https://devsecopsguru.in/kb/docker-6/) - Docker Networking is a virtual wiring system that defines how containers talk to each other, the host machine, and the outside world. An Apartment Intercom System. In a large building, you need different ways to communicate. Docker provides four main "plans": None (Isolation Room): You are in a soundproof room with no phones. You are - [1. The Compute Evolution Physical vs. Virtual vs. Containerization](https://devsecopsguru.in/kb/docker-1/) - Compute evolution is the journey from buying a whole building for one office (Physical) to dividing a building into apartments (Virtual) to simply booking a flexible hotel room (Containers). As an architect, choosing where your application runs are the first critical decision. It dictates your performance ceiling, your security posture, your costs, and how fast - [4. Registries and The Secure Supply Chain](https://devsecopsguru.in/kb/docker-4/) - A Docker Registry is a secure warehouse where your "Gold Images" are stored, versioned, and protected before they go to the production servers. Imagine your code is vital medicine. Unverified Public Image (e.g., docker run mongo): This is like buying a random bottle of pills from a street vendor. It has a label, but you - [2. Docker Internals](https://devsecopsguru.in/kb/docker-2/) - Building Secure, Scalable, and Production-Ready Container Ecosystems. Docker Internals is the "Magic Trick" that uses Linux Kernel features to make a normal process feel like it’s running on its own private computer. Think of Virtual Reality (VR) Cubicle Imagine you are in a massive warehouse. You put on a VR Headset (Namespaces). Suddenly, you only - [3. Docker Image Engineering](https://devsecopsguru.in/kb/docker-3/) - Advanced Image Engineering is the art of building "Gold Images" containers that are super small, fast, and secure by removing everything except the application. Think of The Construction Site Imagine you are building a new house. You need heavy cranes, trucks, and 100 workers (Build Environment). Once the house is finished, you don't leave the - [AWS - Compute - Elastic Beanstalk](https://devsecopsguru.in/kb/aws-compute-elastic-beanstalk/) - 1. AWS Elastic Beanstalk 1. AWS Elastic Beanstalk: The "Managed" Powerhouse Elastic Beanstalk is a Platform as a Service (PaaS) that automates the "heavy lifting" of infrastructure. It is the perfect balance between the simplicity of Heroku and the power of AWS. The Workflow: You upload your code (ZIP, WAR, or Docker image) $\rightarrow$ EB - [Cloud Technology Essentials](https://devsecopsguru.in/kb/cloud-technology/) - By reading these notes, you will gain knowledge tailored to your role, whether you are a beginner or practitioner focusing on Cloud technology foundations or a manager looking to master Cloud leadership and strategy. 1. What is Cloud Computing? Cloud computing means using someone else’s computer (servers) and other compute services over the internet to - [GitHub Actions](https://devsecopsguru.in/kb/github-actions/) - [1. Foundations and Culture](https://devsecopsguru.in/kb/devsecops-1-foundations-and-culture/) - What DevSecOps Really Means DevSecOps means making security part of the daily habit of writing code, rather than a final exam before release. Fixing it late is expensive: If you find a security bug after the software is released, it costs more. Fixing it early is cheap: If you find the bug while you are - [2. Secure SDLC and Application Security](https://devsecopsguru.in/kb/devsecops-2-secure-sdlc-and-application-security/) - 1. Secure SDLC - SSDLC The Secure Software Development Life Cycle (SSDLC) is a framework that integrates security activities into every phase of software development from the first whiteboard sketch to the final line of code in production. Unlike the traditional SDLC, where security was a final "gate" before release, SSDLC ensures that security is - [3. DevOps SDLC.](https://devsecopsguru.in/kb/devops-3-devops-sdlc/) - DevOps SDLC (Software Development Life Cycle) is a continuous, collaborative, and automated process of building software where entire teams work together from the very beginning of the project till the end. It includes a continuous cycle of Planning → Coding → Building → Testing → Releasing → Deploying → Operating → Feedback, which helps deliver - [2. Life before DevOps](https://devsecopsguru.in/kb/devops-2-life-before-devops/) - Before DevOps came into picture, software development, operations, QA, Security used to work in a completely different way. Teams were separate, processes were slow, and delivering software felt like a long, painful journey. This older way of working is generally called traditional IT model or pre-DevOps era. 1. Everyone worked in silos Developers sat on - [4. DevOps principles](https://devsecopsguru.in/kb/devops-4-devops-principles/) - DevOps principles are the core beliefs and guidelines that shape how teams work, deliver software, and continuously improve.These principles help organizations move from slow, manual, siloed processes to a fast, automated, and collaborative delivery model. DevOps principles come from three major areas: - The Three Ways of DevOps. CALMS framework. Modern engineering principles. Let’s understand - [10. Site Reliability Engineering (SRE).](https://devsecopsguru.in/kb/devops-10-site-reliability-engineering-sre/) - SRE Principles. Site Reliability Engineering (SRE) is a discipline created by Google that combines software engineering with operations to build highly reliable, scalable, and efficient systems. SRE brings engineering mindset, automation, and data-driven decisions to operations. SRE makes sure systems are fast, reliable, and always available without slowing down development. 1. Reduce toil Toil is - [9. DevSecOps - Security Embedded into DevOps](https://devsecopsguru.in/kb/devops-9-devsecops-security-embedded-into-devops/) - DevSecOps means integrating security into every stage of the DevOps pipeline.Instead of treating security as a separate step at the end, DevSecOps makes security a shared responsibility of everyone Developers, Operations, QA, and Security teams. DevSecOps = Development + Security + Operations working together. 15.1 Key security practices 1. Automated security scanning Running security checks - [8. Designing a DevOps transformation strategy.](https://devsecopsguru.in/kb/devops-8-designing-a-devops-transformation-strategy/) - Adopting DevOps is not a one-time activity. It is a journey of cultural change, process improvement, automation, and continuous learning. A DevOps transformation must be done in a structured and step-by-step way. Stages of DevOps Transformation. and Success Metrics to measure progress. 13.1 Stages of DevOps transformation. These are the major stages every organization goes - [7. DevOps Leadership - People & Change leadership](https://devsecopsguru.in/kb/devops-7-devops-leadership/) - DevOps is not only about tools or automation it is mainly about people, culture, and leadership.Strong leadership helps teams move from traditional slow processes to a fast, collaborative, and modern DevOps way of working. DevOps leaders focus on guiding, supporting, and removing obstacles, instead of controlling or micromanaging. These principles help leaders create the right - [6. DevOps Metrics](https://devsecopsguru.in/kb/devops-6-devops-metrics/) - Using these metrics, teams can make data-driven improvements, avoid guesswork, and build a high-performing DevOps organization. DevOps is successful only when teams measure their work.Without metrics, teams depend on guesswork, opinions, or assumptions. DORA Metrics show the performance of the delivery pipeline.Flow Metrics show how work moves and where delays happen.Operational Metrics show the health ## Knowledge Base FAQs - [What are the steps to submit a purchase order?](https://devsecopsguru.in/?echo_kb_faq=what-are-the-steps-to-submit-a-purchase-order) - Here's the process to submit a purchase order: Fill out the purchase order form. Obtain the necessary approvals from your manager or department head. Submit the approved purchase order to the procurement team. - [Where can I find templates for customer presentations?](https://devsecopsguru.in/?echo_kb_faq=where-can-i-find-templates-for-customer-presentations) - We have a library of customer presentation templates within the Sales & Marketing section of our knowledge base. - [What is the process for requesting time off?](https://devsecopsguru.in/?echo_kb_faq=what-is-the-process-for-requesting-time-off) - Access our Time Off Request form. Fill out the form, including your desired dates and any relevant notes. Submit the form to your manager for approval. ## Categories - [Uncategorized](https://devsecopsguru.in/category/uncategorized/) ## Categories - [DevOps Essentials](https://devsecopsguru.in/kb/category/devopsessentials/) - DevOps Essentials - [AWS(Draft)](https://devsecopsguru.in/kb/category/aws/) - aws - [Tech should learn](https://devsecopsguru.in/kb/category/essentials/) - Cloud Technology - [AWS-Compute](https://devsecopsguru.in/kb/category/aws/aws-compute/) - [DevSecOps Essentials(Draft)](https://devsecopsguru.in/kb/category/devsecopsessentials/) - DevSecOps Essentials - [Programming](https://devsecopsguru.in/kb/category/programming/) - Programming - [Python](https://devsecopsguru.in/kb/category/python/) - Python learnings - [CI/CD](https://devsecopsguru.in/kb/category/cicd/) - cicd - [GitHub Actions](https://devsecopsguru.in/kb/category/cicd/github-actions/) - Github-Actions - [Kubernetes (Draft)](https://devsecopsguru.in/kb/category/kubernetes/) - Docker and Kubernetes - [Docker](https://devsecopsguru.in/kb/category/docker/) - Docker - [AWS-Cloud-Tech](https://devsecopsguru.in/kb/category/aws/aws-cloud-tech/) - [The Foundation](https://devsecopsguru.in/kb/category/kubernetes/k8s-the-foundation/) - [Kubernetes Architecture](https://devsecopsguru.in/kb/category/kubernetes/kubernetes-architecture/) - [Kubernetes Setting Up the Lab](https://devsecopsguru.in/kb/category/kubernetes/kubernetes-setting-up-the-lab/) - [Kubernetes Namespace](https://devsecopsguru.in/kb/category/kubernetes/kubernetes-namespace/) - [Pod](https://devsecopsguru.in/kb/category/kubernetes/pod/) ## Tags - [DevOpsEssentials](https://devsecopsguru.in/kb/tag/devopsessentials/) - DevOpsEssentials - [aws](https://devsecopsguru.in/kb/tag/aws/) - aws - [cloud](https://devsecopsguru.in/kb/tag/cloud/) - cloud technology - [DevSecOps](https://devsecopsguru.in/kb/tag/devsecops/) - DevSecOps - [programming](https://devsecopsguru.in/kb/tag/programming/) - programming - [Python](https://devsecopsguru.in/kb/tag/python/) - Python - [cicd](https://devsecopsguru.in/kb/tag/cicd/) - cicd - [git](https://devsecopsguru.in/kb/tag/git/) - git - [Docker](https://devsecopsguru.in/kb/tag/docker/)