Hetzner Server — ZHARRA
Инвентаризация: 2026-07-09
Доступ
| Provider | Hetzner Cloud, проект ALXKLIM |
| Hostname | ZHARRA |
| IP | 95.216.197.32 (Helsinki) |
| OS | Ubuntu 26.04 LTS |
| SSH | ssh -i ~/.ssh/id_ed25519_hetzner root@95.216.197.32 |
| Disk | 38G total, ~27G free (27% used) |
| RAM | 3.7G total, ~2.6G available |
Почему Caddy, а не nginx
Caddy на хосте: автоматический SSL (Let's Encrypt), простой Caddyfile, статика + reverse_proxy в одном файле. TechnoBard Docker не поднимает свой Caddy — сервисы на 127.0.0.1, Caddy на хосте проксирует.
Файл nginx в techno_bard/infra/nginx/ — legacy reference, на сервере не используется.
Структура файловой системы
/var/www/
alxklim.com/ ← git: alxndr-klmnko/alxklim (портфолио)
medcard.alxklim.com/ ← git: alxndr-klmnko/medcard (PWA dist)
stats.medcard.alxklim.com/← PHP analytics (rsync, не git)
/opt/
technobard/ ← Docker Compose (TechnoBard)
alxklim-infra/ ← git clone (memory/ для dashboard volume)
alxklim-dashboard/ ← Docker dashboard :3010 (отдельный репо)
/etc/caddy/Caddyfile ← все vhosts
/etc/alxklim/ ← healthcheck.env (Telegram, cron)
/var/log/alxklim/ ← healthcheck logs
Docker (на 2026-07-09)
infra-web-1 Up (127.0.0.1:3000)
infra-api-1 Up (127.0.0.1:8080)
infra-livekit-1 Up ✅ (fixed 2026-07-09: use_external_ip=false, compose port override)
infra-postgres-1 Up
infra-redis-1 Up
infra-minio-1 Up
ZHARRA_BOT — не задеплоен.
Мониторинг (Phase 3)
# с Mac — установить cron на сервере
make setup-healthcheck-cron
# логи на сервере
tail -f /var/log/alxklim/healthcheck.log
Telegram: /etc/alxklim/healthcheck.env (TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID).
Sync memory на сервер
make sync-infra # git pull в /opt/alxklim-infra
Dashboard читает memory/ оттуда (volume mount).
DNS
Зона alxklim.com в Hetzner DNS.
DNS zone file: infra/dns/alxklim.com.zone
Старый хостинг (НЕ актуально)
MedCard раньше был на ultahost (user oevvzpbk, cPanel). Мигрирован на Hetzner.
curescroll/deploy.sh и ~/.ssh/config Host medcard — устарели, не использовать.