GitLab CI/CD: Pipelines, CI/CD and DevOps for Beginners
What you'll learn
- What is a pipeline
- What is Continuous Integration (CI), Continuous Delivery (CD) and Continuous Deployment (CD)
- Automate your build, test & deployment with Gitlab CI
- Learn industry "best practices" in building CI/CD pipelines
- Demonstrate your understanding of building CI/CD pipelines to future employers
- Automate your builds, tests, and deployments
- Automatic deployments using AWS
- Build pipelines with code quality checks, unit tests, API testing
- Solve problems with hands-on assignments
- Create Merge Requests and review code
- Dynamic environments
Requirements
- Registering for a GitLab .com account (the free plan works very well)
- Verifying your GitLab .com account by text message by providing a phone number.
- Git basics (like configuring a repository locally, cloning, merge, commit, push)
- Basic experience with Linux, Linux commands and using the terminal
- Admin permissions that allow you to install additional tools (Node, npm, Docker)
- Optional: Installing Visual Studio Code
- Optional: Basic experience with Docker
Description
This course is neither endorsed by, nor in partnership, nor affiliated with GitLab, Inc.
This course will teach you how to use Gitlab CI for your own projects. You will learn the basics of CI/CD and start building pipelines right from the first lecture.
Some highlights:
- have an overview of the Gitlab architecture
- create a simple pipeline
- learn the CI/CD practice by deploying a simple website
- use Docker images within Gitlab
- learn how to deploy a Java application to AWS, using AWS S3 and AWS Elastic Beanstalk.
This course will NOT make you a GitLab CI / DevOps expert
A lot of courses promise you will become an expert in no time. Becoming an expert in any tool comes with time and hard work. It simply does not make sense to promise something like that. It will not be honest.
This is a course designed for beginners. Learning to build pipelines is a try-and-error process that can be very frustrating. You need to understand the tools you use and how GitLab can support your needs. In the end, GitLab is just a tool.
What I will try is to explain to you the basics and offer you enough practice opportunities so that you can apply what you learn easily in your own projects as well. I will show you how to build pipelines with Gitlab CI.
Who this course is for:
- Software developers learning to build pipelines in order to test & deploy code
- Solutions architects
- Application Architects
- Infrastructure Architects
- IT Operations
Featured review
Instructors
Hi, I’m Valentin – an Agile Enterprise Software Developer with a strong background in computer science. I’m passionate about improving the way software is developed using Agile and Scrum, believing that there’s always a better, more efficient way to build great products.
I’m an active member of various tech communities, holding roles such as Postman Supernova, GitLab contributor (ex-GitLab Hero), and AWS Community Builder. My journey in open-source spans many projects, including serving as a Joomla! CMS Bug Squad member, Joomla! Stack Exchange moderator, and part of the TYPO3 CMS Security Team. Open-source has played a crucial role in my career, and I’m dedicated to giving back to the community.
I joined Udemy to share my expertise and real-world experience with learners who want to enhance their skills in software development, API testing, DevOps, and Agile methodologies. My courses focus on practical, hands-on learning, ensuring that students not only understand the concepts but also know how to apply them effectively.
If you’re eager to take your skills to the next level, join me on this journey of learning and growth. ?
I am here to help you. If you have any questions related to a course, it is best to use the course Q&A. Most questions have already been answered. Feel free to use the search functionality.
Let's learn technology together. I am an Agile Enterprise Software Developer with a strong background in computer science. I believe there is a better way of developing software by using Agile and Scrum.