DevOps Foundations: Your First Project
3h 57mBeginner2024-07-29
Authors

Carlos Nunez
Cloud and Software Consultant | Field Engineer at VMware
Course details
Curious about how to put DevOps principles into practice? This course can help. Join instructor and DevOps expert Carlos Nunez as he demonstrates how to apply DevOps principles to a sample app for a fictitious travel booking company. Throughout the course, Carlos shows you how to leverage popular tools and methodologies to make updating, testing, and releasing the app a breeze. After explaining how to containerize the website with Docker and Docker Compose, he shows how to write unit and integration tests with RSpec, Capybara, and Selenium. He then guides you through the process of deploying your website to the cloud with OpenTofu and using GitLab CI, GitLab's built-in CI/CD service that can build, test, and deploy your app. Upon completing this course, you'll know how to turn a slow and complex application development process into a fast and enjoyable one.
Skills covered
BashJenkinsTerraformHashiCorpDockerDevOps FoundationsDevOpsProjectOpen Source
Concepts
0. Introduction
- 01 - Your first project, DevOps-ified
- 02 - What you should know
- 03 - Configuring AWS
1. The Project The Mission
- 04 - So what is this DevOps thing anyway
- 05 - Your application, pre-DevOps
- 06 - Your application, post-DevOps
2. Testing Locally with Docker
- 07 - Bring production to your laptop with Docker
- 08 - Installing Docker
- 09 - Writing your first Dockerfile
- 10 - Writing your first Docker Compose manifest
3. Getting Started with Git
- 11 - Version control - The secret weapon of DevOps
- 12 - Installing Git
- 13 - Initializing your first Git repository
- 14 - Getting familiar with the Git workflow
4. Collaborative Version Control
- 15 - Beyond local repositories
- 16 - Introducing GitLab
- 17 - Creating the GitLab Docker Compose service
- 18 - Starting the GitLab Compose service
- 19 - Creating our first GitLab project
- 20 - Connecting Git to GitLab
5. Testing Your App with RSpec, Capybara, and Selenium
- 21 - Test often, ship often
- 22 - Setting up your test
- 23 - Viewing our test harness in Docker Compose
- 24 - Updating the Dockerfile
- 25 - Running the test
- 26 - Finding criteria for a unit test
- 27 - Writing the unit test
- 28 - Setting up Selenium
- 29 - Running your test with Selenium
6. Infrastructure as Code with OpenTofu
- 30 - Deploy with confidence with infrastructure as code
- 31 - Finding the version of OpenTofu to use
- 32 - Adding OpenTofu to Docker Compose
- 33 - AWS deployment explained
- 34 - Writing your integration test
- 35 - Writing OpenTofu code
- 36 - Reviewing the OpenTofu plan
- 37 - Applying the OpenTofu plan
- 38 - Running your integration test
- 39 - Destroying the website from AWS S3
7. CI CD as Code
- 40 - Shipping fast with CI CD
- 41 - Introducing GitLab CI
- 42 - Writing our first Gitlab CI workflow
- 43 - Configuring sensitive variables
- 44 - Creating our first Gitlab CI runner
- 45 - Putting it all together
- 46 - Challenge - Change the website title
- 47 - Solution - Change the website title
8. Conclusion
- 48 - Next steps