CI/CD Pipelines with GitHub Actions & Docker Tutorial
Start learning CI/CD Pipelines with GitHub Actions & Docker →
Course Contents
CI/CD Foundations
- CI/CD Course Introduction and Prerequisites
- Continuous Integration vs Continuous Delivery vs Deployment
- Pipeline Architecture and the Software Delivery Lifecycle
- GitHub Actions Architecture: Events, Runners, Jobs, and Steps
- Planning a Secure CI/CD Pipeline
Workflow Design
- Workflow Files, Triggers, and Event Filters
- Jobs, Steps, Dependencies, and Conditions
- Contexts, Expressions, Variables, and Environment Files
- Workflow Permissions and the GITHUB_TOKEN
- Using Third-Party Actions Safely
- Shell Commands and Error Handling in Workflows
- Debugging Failed GitHub Actions Workflows
Build, Test, and Quality Gates
- Dependency Installation and Dependency Caching
- Build Matrices for Multiple Versions and Platforms
- Linting, Formatting, and Static Analysis Gates
- Unit Tests, Integration Tests, and Test Reports
- Node.js CI Pipeline
- Python CI Pipeline
- React Application CI Pipeline
Docker Builds and Registries
- Docker Builds in GitHub Actions
- Image Tags, Immutable References, and Release Versions
- Publishing Images to GitHub Container Registry
- Publishing Images to Docker Hub
- Container Image Scanning and SBOMs
- Docker Build Security Best Practices
Deployments and Environments
- Deployment Environments and Protection Rules
- Secrets, Variables, and Configuration Management
- Deploying to a Linux Server over SSH
- Deploying a Docker Compose Application
- Staging and Production Deployment Promotion
- Database Migrations in a Deployment Pipeline
- Health Checks, Smoke Tests, and Rollbacks
- Zero-Downtime Deployment Strategies
Security and Governance
- Least Privilege for CI/CD Pipelines
- OpenID Connect for Cloud Deployments
- Code Scanning with CodeQL
- Secret Scanning and Dependency Updates
- Branch Protection and Required Checks
- Audit Logs, Provenance, and Supply Chain Security
