Module 01 · 2.5 hrs
Start hereDevOps Culture & Toolchain Overview
DevOps lifecycle, SDLC and Agile handoffs. Set up Git, Docker and the Atom Code lab; join the course GitHub organization.
CI/CD, containers & AWS deployment
Become job-ready in modern DevOps — Git and GitHub workflows, production CI/CD with GitHub Actions (jobs, matrices, artifacts, secrets and self-hosted runners), Docker images and Compose, and secure cloud deployments to AWS with OIDC federation, monitoring and rollback strategies.
Every module pairs a focused topic with a guided practical exercise — learn it, build it, then practice it on the Atom Code portal in the same session.
DevOps Culture & Toolchain Overview
DevOps lifecycle, SDLC and Agile handoffs. Set up Git, Docker and the Atom Code lab; join the course GitHub organization.
Git Essentials: Commits, Branches & Merges
Stage, commit, branch and merge a feature; resolve a merge conflict and push the history to GitHub.
Collaborating on GitHub: PRs, Reviews & Issues
Open a pull request with required reviews, link issues and branch protection, then merge with a squash commit.
GitHub Actions: Your First Workflow
Write a YAML workflow that lints and tests on every push; read the Actions log and fix a failing step.
Triggers, Events & Scheduled Runs
Add workflow_dispatch, pull_request and cron triggers; compare event payloads and filter branches and paths.
Jobs, Runners & Build Matrices
Split a workflow into parallel jobs with needs, then build across Node versions and OS images in a matrix.
Artifacts, Caching & Concurrency
Cache dependencies, pass build artifacts between jobs and cancel superseded runs with concurrency groups.
Secrets, Environments & Protected Deployments
Store cloud credentials as encrypted secrets and gate a production deploy behind an environment approval.
Self-Hosted Runners on AWS
Provision a self-hosted runner on an EC2 instance, label it and route a Docker build job to it.
Docker Fundamentals: Images & Containers
Run, inspect and commit containers; containerize a Node.js API and map ports and volumes.
Writing Production-Grade Dockerfiles
Layer caching, .dockerignore and a multi-stage build that shrinks the image from 1 GB to about 150 MB.
Docker Compose: Multi-Container Apps
Compose an app + PostgreSQL + Nginx stack with networks, healthchecks and one-command teardown.
Container Registries: GHCR & Amazon ECR
Tag, push and pull versioned images from GHCR and ECR straight from a workflow.
Continuous Integration Pipelines
Assemble a full CI pipeline: lint, unit tests, Docker build and a vulnerability scan on every PR.
Keyless AWS Access: IAM Roles & OIDC
Federate GitHub Actions to AWS via OIDC so deployments run without long-lived access keys.
Continuous Delivery to AWS EC2
Deploy a containerized app to EC2 over SSH in a workflow with health checks and automatic rollback.
Containers on AWS: ECR & ECS Fargate
Ship an image to ECS Fargate from Actions; update the service and watch the rolling deploy.
Static & Serverless Deploys: S3 + CloudFront
Publish a static app to S3 behind CloudFront with cache invalidation on every merge to main.
Monitoring, Logs & Rollbacks
Stream container logs to CloudWatch, alarm on health failures and rehearse a rollback runbook.
Capstone Project: End-to-End CI/CD Pipeline to AWS
Team project from PR to AWS — full CI/CD with matrix builds, a self-hosted runner stage, OIDC deploy, dashboards and badges.