
Navigate the GitLab CI/CD roadmap, master pipelines and UI, and implement automation with runners, artifacts, and third-party tools like sonar cube, Docker, Kubernetes, Terraform, and JIRA integrations.
Build a complete java-based web app from scratch to deployment on AWS using GitLab CI/CD, Maven, JUnit, SonarQube, Docker, and ECS with a load balancer.
Create a GitLab account using a personal email or sign in with Google, then verify your email and set up a project. Explore starting a free trial.
Apply the web IDE to add files directly to a GitLab repository by editing in the browser, creating new files, and committing changes.
Explore how multi-job pipelines in GitLab CI run jobs in parallel, so a single failing job does not affect the others; learn to validate and edit pipelines in the editor.
Understand how stages structure a GitLab CI/CD pipeline by using the stages keyword, executing jobs in parallel within each stage and progressing only after all jobs succeed.
Discover how to use Linux commands in a GitLab CI pipeline, edit the CI file, run ls and pwd, and verify pipeline execution.
Learn how to add single-line and multi-line comments in GitLab CI, including a hack for multi-line comments and using a dot prefix to disable a job in pipelines.
Learn to create and use file variables in GitLab CI/CD, access their path or contents, and apply them for private keys and large configuration data in pipelines.
Learn to parameterize GitLab CI jobs by dynamically providing variable values at runtime, and override the age variable during pipeline execution to affect outcomes.
Learn how merge requests facilitate collaboration by proposing, reviewing, and approving code changes from a feature branch to the main branch, ensuring version control and code quality.
Explains how to use merge requests in GitLab to trigger pipelines on merge events or main commits, and how to create, review, and merge merge requests.
Explore matrix and loop hands-on in GitLab CI/CD by implementing parallel loops with metrics, environment variables, and nested loops across dev, test, and prod to run multiple jobs.
Trigger downstream pipelines to run a second pipeline from the first across two projects in GitLab CI/CD. Use the trigger keyword to invoke the downstream pipeline, showcasing multi-project execution.
Learn to create a self-hosted runner in the cloud with the shell executor on AWS EC2, register it in GitLab, tag EC2 Ohio Shell, install Git, and run the pipeline.
Change the docker image for a self-managed runner in GitLab CI/CD by specifying a new image tag in the pipeline, switching from Ubuntu to Alpine and confirming via logs.
Explores using a single self-hosted runner to host both Docker and shell executors, registering multiple runners in GitLab CI/CD on EC2 instances for the use case.
Discover how to publish and visualize JUnit test reports in a Maven project using GitLab CI/CD. Learn to configure artifacts and dashboards to centralize unit test results from Surefire reports.
Integrate docker build into GitLab CI/CD to create, tag, and verify Docker images for a Tomcat-based Maven app, with a clean Dockerfile, port 8080 exposure, and pipeline stages.
Integrate Docker Hub with the GitLab CI/CD pipeline to push built images, using docker login with variables and tagging images by the pipeline ID before pushing.
Explore GitLab container registry, a built-in, private, and secure alternative to Docker Hub that integrates with GitLab CI/CD to store, tag, version, and auto-clean Docker images across projects.
Configure the AWS CLI in a GitLab pipeline by creating access keys and secret keys, setting variables, running aws configure, and listing S3 buckets to verify credentials.
discover Terraform, the platform-agnostic infrastructure as code tool from HashiCorp, to define and provision servers, networks, and databases with configurations; explore init, plan, destroy, and auto-approve workflows for CI provisioning.
Set up Ansible on the runner and validate its integration with GitLab CI/CD by installing Ansible on EC2, checking the version, and running a pipeline stage.
Set up and run an Ansible playbook within a GitLab CI/CD pipeline to install git on an Amazon Linux server, using inventory, private key access, and a hosted playbook.
"GitLab Mastery: From Novice to DevOps Expert"
This comprehensive GitLab course takes you on a journey from beginner to expert level, covering all aspects of GitLab's powerful DevOps platform. Whether you're new to version control or an experienced developer looking to enhance your skills, this course provides in-depth knowledge and hands-on experience with GitLab's extensive features and integrations.
Course Outline:
Introduction to GitLab
Version control basics
GitLab overview and architecture
GitLab Fundamentals
Repository management
Branching and merging strategies
Code review process
Continuous Integration and Continuous Deployment (CI/CD)
GitLab CI/CD pipeline configuration
Building, testing, and deploying applications
GitLab DevOps Tools
Package Registry
Container Registry
Terraform state management
Integrations and Advanced Features
AWS integration
Docker and DockerHub
Kubernetes and EKS
Terraform
Ansible
SonarQube for code quality analysis
Collaboration and Project Management
Jira integration
Confluence integration
Telegram integration for notifications
Security and Compliance
GitLab security features
Implementing secure DevOps practices
GitLab Administration and Optimization
Instance management
Performance tuning
Scaling GitLab for enterprise use
Benefits of Taking This Course:
Comprehensive skill development: Gain expertise in GitLab's full suite of tools and features, from basic version control to advanced DevOps practices.
Enhanced career prospects: DevOps skills are in high demand, and GitLab proficiency can open doors to new job opportunities and career advancement.
Improved workflow efficiency: Learn best practices for streamlining development processes, reducing time-to-market, and increasing productivity.
Hands-on experience: Practice with real-world scenarios and integrate GitLab with popular tools and platforms used in modern software development.
Better collaboration: Master GitLab's features for team collaboration, project management, and communication.
Security focus: Learn to implement secure DevOps practices, ensuring your projects meet industry standards for security and compliance.
Scalable knowledge: Apply GitLab skills to projects of any size, from personal repositories to enterprise-level implementations.
Continuous learning: Stay updated with the latest DevOps trends and technologies through GitLab's evolving ecosystem.
By the end of this course, you'll have the skills and confidence to leverage GitLab's powerful features in your development workflow, implement efficient CI/CD pipelines, and contribute to a modern DevOps environment.