Налаштування VPS
Опис поточної інфраструктури (as-is)
1. Загальна архітектура
Інфраструктура побудована на одному VPS (Hetzner) з використанням Docker + Docker Compose та розділенням на логічні зони:
Internet
|
Cloudflare (DNS, TLS, Proxy*)
|
Traefik (reverse proxy, SSL)
|
Docker networks
├─ proxy
└─ monitoring
├─ Grafana
├─ Prometheus
├─ Node Exporter
├─ cAdvisor
└─ Blackbox Exporter
2. Мережі Docker
proxy
Призначення: публічний доступ
Використовується Traefik
Всі сервіси, які мають домени, підключаються сюди
monitoring
Призначення: внутрішній моніторинг
Сервіси бачать один одного по DNS-іменах контейнерів
Не доступна ззовні напряму
3. Reverse Proxy — Traefik
Traefik v3.x
Функції:
Reverse proxy
Автоматичні SSL сертифікати (Let’s Encrypt)
DNS-01 challenge через Cloudflare
Docker provider (labels)
EntryPoints
:80 → web
:443 → websecure
Сертифікати
Resolver: cf
DNS challenge через Cloudflare API Token
Сертифікати зберігаються в acme.json
4. Monitoring Stack
Prometheus
Збирає метрики з:
node-exporter
cadvisor
blackbox
prometheus (self)
Scrape interval: 15s
Grafana
UI для метрик
Datasource: Prometheus
Доступ через домен
Працює через Traefik
Node Exporter
Метрики хоста (CPU, RAM, Disk, Load)
cAdvisor
Метрики Docker контейнерів
Blackbox Exporter
Перевірки HTTP / TCP / ICMP (аптайм)
5. Безпека
UFW
Дозволено тільки: 22, 80, 443
Fail2Ban
Захист SSH
Docker socket
Доступний тільки Traefik контейнеру
#DevOps #Infrastructure #VPS #Hetzner #Docker #DockerCompose #Containerization #Traefik #ReverseProxy #Cloudflare #LetsEncrypt #DNSChallenge #SSL #Monitoring #Observability #Prometheus #Grafana #NodeExporter #cAdvisor #BlackboxExporter #UptimeMonitoring #LinuxServer #UFW #Fail2Ban #ServerSecurity #SelfHosted #ProductionSetup #CloudArchitecture #SRE
1. Загальна архітектура
Інфраструктура побудована на одному VPS (Hetzner) з використанням Docker + Docker Compose та розділенням на логічні зони:
Internet
|
Cloudflare (DNS, TLS, Proxy*)
|
Traefik (reverse proxy, SSL)
|
Docker networks
├─ proxy
└─ monitoring
├─ Grafana
├─ Prometheus
├─ Node Exporter
├─ cAdvisor
└─ Blackbox Exporter
2. Мережі Docker
proxy
Призначення: публічний доступ
Використовується Traefik
Всі сервіси, які мають домени, підключаються сюди
monitoring
Призначення: внутрішній моніторинг
Сервіси бачать один одного по DNS-іменах контейнерів
Не доступна ззовні напряму
3. Reverse Proxy — Traefik
Traefik v3.x
Функції:
Reverse proxy
Автоматичні SSL сертифікати (Let’s Encrypt)
DNS-01 challenge через Cloudflare
Docker provider (labels)
EntryPoints
:80 → web
:443 → websecure
Сертифікати
Resolver: cf
DNS challenge через Cloudflare API Token
Сертифікати зберігаються в acme.json
4. Monitoring Stack
Prometheus
Збирає метрики з:
node-exporter
cadvisor
blackbox
prometheus (self)
Scrape interval: 15s
Grafana
UI для метрик
Datasource: Prometheus
Доступ через домен
Працює через Traefik
Node Exporter
Метрики хоста (CPU, RAM, Disk, Load)
cAdvisor
Метрики Docker контейнерів
Blackbox Exporter
Перевірки HTTP / TCP / ICMP (аптайм)
5. Безпека
UFW
Дозволено тільки: 22, 80, 443
Fail2Ban
Захист SSH
Docker socket
Доступний тільки Traefik контейнеру
#DevOps #Infrastructure #VPS #Hetzner #Docker #DockerCompose #Containerization #Traefik #ReverseProxy #Cloudflare #LetsEncrypt #DNSChallenge #SSL #Monitoring #Observability #Prometheus #Grafana #NodeExporter #cAdvisor #BlackboxExporter #UptimeMonitoring #LinuxServer #UFW #Fail2Ban #ServerSecurity #SelfHosted #ProductionSetup #CloudArchitecture #SRE