Streamlining DevOps with GitLab CI/CD Automation
Learn the fundamentals of DevOps and CI/CD using GitLab in this hands-on course. Discover how to streamline software development through automation, improve tea...
Learn the fundamentals of DevOps and CI/CD using GitLab in this hands-on course. Discover how to streamline software development through automation, improve tea...
This course provides a comprehensive introduction to DevOps principles, with a strong focus on Continuous Integration and Continuous Delivery/Deployment (CI/CD) using GitLab. Designed for developers, system administrators, and IT professionals, the course explores how integrated DevOps practices can accelerate software delivery, improve collaboration, and increase reliability.
Through practical, hands-on instruction, participants will learn how to set up and manage GitLab as a unified DevOps platform. Key topics include version control, pipeline automation, testing strategies, deployment automation, and best practices for efficient CI/CD workflows. The course avoids reliance on temporary UI elements, instead emphasizing core concepts and reusable practices applicable across tools and environments.
By the end of the course, learners will be able to:
No matter your role in the software development lifecycle, this course will equip you with the essential skills to streamline workflows and deliver high-quality software with confidence.
- The State of Software Development Before DevOps
- Overview of the Hats for Cats Web Application
- Manually Building and Verifying Code
- Manually Conducting Security Testing on Code
- Manual Packaging and Deployment of Code
- Problems Arising from Manual Software Development Lifecycle Practices
- Addressing Challenges with DevOps Practices
- Lesson Overview
- Mastering Essential Git Commands
- System Requirements
- The Benefits of Using Git
- Saving Your Code: How to Commit Files in Git
- Tagging Commits to Identify Versions of Code
- Using Branches to Develop Code in Isolation
- Synchronizing Local and Remote Repository Copies
- Additional Resources for Learning Git
- Lesson Overview
- GitLab Fundamentals: Key Concepts and Components
- Getting Started: Technical Prerequisites for GitLab
- Focusing on the “Why” Rather Than the “How”
- Introducing the GitLab Platform
- Organizing Work with Projects and Groups
- Managing Work Using GitLab Issues
- Safely Editing Files with Commits, Branches, and Merge Requests
- Implementing DevOps Practices with GitLab Flow
- Lesson Overview
- Code Verification in CI/CD Pipelines
- Technical Requirements
- Building and Verifying Code in a CI/CD Pipeline
- Integrating Code Quality Checks into Your CI/CD Pipeline
- Setting Up Automated Functional Tests in a CI/CD Pipeline
- Integrating Fuzz Testing into Your CI/CD Workflow
- Checking Accessibility in a CI/CD Pipeline
- Additional Methods to Verify Your Code
- Lesson Overview
- Securing Your Code: Integrating Security Scanning into Your GitLab CI/CD Pipeline
- Technical requirements
- Understanding GitLab’s Security Scanning Strategy
- Scanning Source Code for Vulnerabilities with SAST
- Using Secret Detection to Identify Sensitive Data in Your Repository
- Using DAST to Detect Web Application Vulnerabilities
- Using Dependency Scanning to Detect Vulnerabilities in Project Dependencies
- Using Container Scanning to Secure Your Docker Images
- Managing Dependency Licenses with License Compliance
- Using IaC Scanning to Identify Vulnerabilities in Infrastructure Configuration
- Understanding the Three Types of GitLab Security Reports
- Managing Security Vulnerabilities
- Integrating External Security Scanners into GitLab Pipelines
- Lesson Overview
- Packaging and Deploying Code with GitLab CI/CD
- Technical Requirements
- Storing Code in GitLab’s Package Registry for Future Use
- Storing Code in GitLab’s Container and Package Registries for Future Deployment
- Deploying to Multiple Environments with GitLab Flow
- Testing Changes with Review App Deployments
- Deploying Applications to Real-World Production Environments
- Deploying Applications to Kubernetes with GitLab CI/CD and GitOps
- Lesson Overview
- Optimizing CI/CD Pipelines for Speed and Maintainability
- Speeding Up CI/CD Pipelines with DAGs and Parent-Child Structures
- Cross-Platform Builds: Compiling Code for Multiple Architectures in GitLab CI
- Caching vs. Artifacts in GitLab CI/CD: When and How to Use Each
- Minimizing Redundant Configuration with Anchors and Extensions
- Enhancing Maintainability with Modular Pipelines and Parent-Child Structures
- Securing and Speeding Up CI Jobs with Purpose-Built Containers
- Lesson Overview
Git basics (clone, commit, push, merge)
Linux/command-line familiarity
GitLab account (free or self-managed)
Docker installed for building images and runners
Basic programming experience (any language)
Configure and manage .gitlab-ci.yml files to define multi‐stage pipelines
Implement continuous integration and delivery workflows that automate build, test, and deploy steps
Integrate Docker and Kubernetes into CI/CD pipelines for containerized deployments
Automate security scanning and code-quality checks using built-in GitLab features
Deploy applications to AWS (S3, Elastic Beanstalk, or other services) directly from your GitLab pipelines
Last Updated
Jun 13, 2025Students
0language
EnglishDuration
00h 00mLevel
beginnerExpiry period
LifetimeCertificate
YesThis website uses cookies to personalize content and analyse traffic in order to offer you a better experience. Cookie Policy