Real world DevOps project from start to finish
DevOps for individuals, startups, and self-hosting | Docker, GitLab, Ansible, LXC, CI/CD, WireGuard, Traefik, Linux
IT and Software ,Operating Systems and Servers,Linux
Lectures -78
Quizzes -14
Duration -5.5 hours
Lifetime Access

Lifetime Access
30-days Money-Back Guarantee
Get your team access to 10000+ top Tutorials Point courses anytime, anywhere.
Course Description
This course will cover a DevOps project from its inception all the way to a finished product.
It is aimed at startups, small companies, and individuals who want to self-host their infrastructure.
We will combine multiple tools and services to produce a working, easily reproducible server which can support a small company.
We will cover:
Ansible - to configure the server and deploy services.
Let's Encrypt (certbot) - to obtain wildcard TLS certificate with auto renewal.
VPN (WireGuard) - for secure access to our services.
Docker with docker compose - to easily deploy our applications and services.
MariaDB - MySQL fork.
LXC (Linux containers) - another virtualization technology.
iRedMail - mail server which we'll use to send and receive notifications.
Zulip - an open source chat and collaborative software which can be self-hosted (alternative to Slack or Microsoft Teams).
Traefik (reverse proxy and TLS termination proxy) with Docker and file providers - a single entry point for our services with automatic TLS certificates.
Pi-hole - ad blocking on DNS level.
Nextcloud - Email, calendar, documents, photos...It even has built-in code editor.
checkmk - monitoring solution.
Borg with borgmatic - backup solution.
GitLab - Git server, CI/CD, GitLab Container Registry, etc.
backup-checker - with this project we will showcase everything we've created!
We'll create a Python program which will compare finished backups with the desired list of backups, use GitLab CI/CD to create Docker image, push it to our own, private Docker Registry, run it on our server via GitLab Runner, and send notification to our Zulip server.
Upgrade scripts for services running in Docker.
Upgrading iRedMail.
Upgrading Zulip.
Upgrading host OS.
When you finish the course, you'll be equipped to add any additional services you need for your particular line of work.
Goals
This course covers a huge number of topics, so by the end of it all, you'll know how to:
- register a domain name
- DNS
- configure VPS (networking, kernel parameters, firewall, etc.)
- Ansible
- VPN (WireGuard)
- Let's Encrypt (certbot)
- Docker
- MariaDB
- Mail server (iRedMail)
- Zulup
- Traefik (reverse proxy and TLS termination proxy)
- Pi-hole
- Nextcloud
- checkmk
- Borg and borgmatic
- GitLab and GitLab runner
- CI/CD
. and quite a few more tricks along the way! This is a broad course, so you'll learn all these subjects by the end of it:
- registering a domain name
- DNS
- setting up VPS (networking, kernel parameters, firewall, etc.)
- Ansible
- VPN (WireGuard)
- Let's Encrypt (certbot)
- Docker
- MariaDB
- Mail server (iRedMail)
- Zulip
- Traefik (reverse proxy and TLS termination proxy)
- Pi-hole
- Nextcloud
- checkmk
- Borg and borgmatic
- GitLab and GitLab runner
- CI/CD
. along the way with more than a few tricks, of course!
Prerequisites
- Not for beginners
- You should've heard for at least half of the tools mentioned in the course description
- You must be familiar with the operating system you are using (navigating the file system, installing software, etc.)
- You must be familiar with Linux, the command line (basic commands)
- You should have basic computer networks knowledge (you know what IP is, maybe some DNS, some HTTP, you've heard of SSH)
Curriculum
Check out the detailed breakdown of what’s inside the course
Introduction
2 Lectures
-
Course overview 03:29 03:29
-
GitHub repository
First Steps
1 Lectures
Buying a domain
1 Lectures
How DNS works
1 Lectures
VPS
1 Lectures
Storage Volume
1 Lectures
Recap: Linode VPS, Arch Linux, additional storage volume
2 Lectures
Ansible introduction
1 Lectures
Ansible installation and configuration
1 Lectures
Ansible roles
1 Lectures
DNS A records
1 Lectures
Configuring DNS on Linux
1 Lectures
Linux file permissions
1 Lectures
Essentials
5 Lectures
Security - SSH daemon, iptables, SSH config, LISH console
1 Lectures
Sysctl - Tweaking kernel parameters
1 Lectures
Recap: venv, Ansible configuration, hostname, essentials, security, sysctl
3 Lectures
Certbot, ACME protocol, wildcard TLS certificates
1 Lectures
WireGuard
2 Lectures
Docker
3 Lectures
MariaDB
1 Lectures
LXC (Linux Containers)
1 Lectures
Recap: certbot, WireGuard, Docker, MariaDB, LXC
3 Lectures
IRedMail
7 Lectures
Zulip
3 Lectures
Recap: Zulip
1 Lectures
Traefik
4 Lectures
Pi-hole
1 Lectures
Nextcloud
4 Lectures
Checkmk
5 Lectures
Borg and borgmatic
3 Lectures
GitLab and GitLab runner
3 Lectures
Do-p.com website
3 Lectures
Backup-checker Python application
4 Lectures
Staying up to date
2 Lectures
Docker prune
1 Lectures
Outro
1 Lectures
Instructor Details
Predrag Mijatovic
Course Certificate
Use your certificate to make a career change or to advance in your current career.
Our students work
with the Best
Related Video Courses
View MoreAnnual Membership
Become a valued member of Tutorials Point and enjoy unlimited access to our vast library of top-rated Video Courses
Subscribe now
Online Certifications
Master prominent technologies at full length and become a valued certified professional.
Explore Now