DevOps Beginner
roadmap.sh: https://roadmap.sh/devops?r=devops-beginner
Suggested path through the DevOps Beginner nodes. Each node links to its lesson when written.
Nodes
Foundations
- What is DevOps
- The software delivery lifecycle
- Dev vs Ops and why they merged
- Culture: collaboration and ownership
Operating systems & the shell
- Linux basics
- The command line and common commands
- File permissions
- Processes and services
- Writing simple shell scripts
Networking basics
- IP addresses and ports
- DNS
- HTTP/HTTPS
- SSH
Version control
- Git fundamentals
- Branching and merging
- Pull requests
A programming/scripting language
- Picking a language (Python, Bash, Go)
- Automating a repetitive task
Containers
- What is a container
- Docker basics (images, containers)
- Writing a Dockerfile
- Running an app in a container
CI/CD
- What is continuous integration
- What is continuous delivery
- Building a simple pipeline
Cloud & hosting
- What is the cloud
- Picking a provider
- Deploying a container
- Monitoring basics
Resources
See resources.md.
Project ideas
- Containerize a small web app with a Dockerfile and run it locally.
- Set up a GitHub Actions pipeline that lints and tests a repo on every push.
- Write a shell script that backs up a directory and schedule it with cron.