Dev Ops

exercises: https://github.com/bregman-arie/devops-exercises

self hosting projects: https://www.youtube.com/watch?v=jFrGhodqC08
linux, git, docker, docker compose, ssh, nginx, bash scripts for building and deploying, cron jobs,
if you need multiple containers across multiple computers use docker swarm to communicate and load balance between computers.
if you need more orchestration than that use kubernetes.
vid also talks about how to have 0 down time deployment. with caddy I think.

Programming language

Networking:

Cloud

Containers and orchestration

Infrasctructure as code

Config management

CI/CD:

Monitoring and Log management / Data analytics