DevOps: Infrastructure as Code, CI/CD, and Automation

DevOps bridges the gap between development and operations by treating infrastructure like software -- version-controlled, tested, and deployed through automated pipelines. This section collects practical, command-level guides for the tools that form the backbone of modern DevOps workflows.

Whether you are managing a handful of servers or orchestrating thousands of containers, the guides below will give you production-ready configurations you can adapt immediately.

Version Control and GitOps

Topic Description Guide
Git for Sysadmins Branching, rebasing, hooks, and infrastructure repos Git for Sysadmins

Containers and Orchestration

Topic Description Guide
Docker Images, volumes, networking, Compose, and security Docker Guide
Kubernetes Pods, Deployments, Services, Ingress, and resource management Kubernetes Fundamentals

Configuration Management and IaC

Topic Description Guide
Ansible Playbooks, roles, vault, and ad-hoc commands Ansible Guide
Terraform HCL, providers, state management, modules, and workspaces Terraform Guide

Pipelines and Delivery

Topic Description Guide
CI/CD Pipelines GitHub Actions, GitLab CI, caching, secrets, matrix builds CI/CD Pipelines

Reliability and Recovery

Topic Description Guide
Backup Strategies rsync, Borg, Restic, 3-2-1 rule, automated schedules Backup Strategies

Classic Unix Reference

For the foundational Unix and Linux commands that underpin every tool above, see the original Unix Toolbox -- a encyclopedic quick-reference covering file systems, networking, process management, and more.

Choosing the Right Tool

Need Recommended
Version-controlled server configs Git + Ansible or Terraform
Build and test every commit GitHub Actions or GitLab CI
Package an app with its dependencies Docker
Run containers at scale Kubernetes
Provision cloud infrastructure Terraform
Configure servers idempotently Ansible
Reliable incremental backups Borg or Restic

Prerequisites

Most guides assume a Debian/Ubuntu or RHEL-family system with root or sudo access. Familiarity with the Linux command line and basic networking is expected. Each article lists specific package installation steps.


Navigate back to the cb.vu home page or pick a guide from the list above to get started.

Explore DevOps

Git for System Administrators: Beyond the Basics

Git guide for sysadmins: branching strategies, rebasing, cherry-pick, hooks, gitops, and managing infrastructure repos.

Docker on Linux: Installation, Images, and Containers

Docker guide: installation, Dockerfile best practices, multi-stage builds, volumes, networking, compose, and security.

Ansible for Server Configuration Management

Ansible guide: inventory, playbooks, roles, templates, vault, and idempotent server configuration management.

CI/CD Pipelines with GitHub Actions and GitLab CI

CI/CD guide: GitHub Actions workflows, GitLab CI pipelines, testing, building, deploying, and pipeline optimization.

Kubernetes Fundamentals for Linux Admins

Kubernetes guide: pods, deployments, services, ingress, ConfigMaps, secrets, and cluster administration for Linux admins.

Infrastructure as Code with Terraform

Terraform guide: HCL syntax, providers, state management, modules, workspaces, and infrastructure lifecycle management.

Linux Backup Strategies: rsync, Borg, and Restic

Linux backup guide: rsync scripts, Borg deduplication, Restic snapshots, 3-2-1 rule, and automated backup strategies.