Comments 6
Эта статья уже была и написана слово в слово
Хорошая статья! Спасибо!
Понравилась не только сама имплементация, как проектирование и инженерный подход.
Могу только предложить вместо
Grafana открывается через SSH tunnel;
использовать Free Tier на Grafana.net. Мониторинг всегда лучше выносить за пределы контура.
Да, согласен. Grafana за SSH tunnel - это скорее аналитика по сервисам и хосту "под рукой", а не внешний мониторинг.
Для моего стенда сейчас это ок: 1 proxy + 3 backends, scrape 30s, Prometheus retention 10d, всё закрыто наружу. Но как только хочется нормальный alerting на случай, если сам хост умер - мониторинг должен жить вне этого контура.
Grafana Cloud Free здесь выглядит нормально: 10k active series, 50 GB logs/month, 14d retention. Для такого маленького стенда это с запасом. Наверное, оставлю локальную Grafana для ручной диагностики, а внешний remote_write сделаю отдельной опцией. Если не сложно, то оставьте Feature request в Issues в GitHub проекте.
столкнулся с похожей проблемой быстрого деплоя. решил ее созданием cli плагина для docker. https://github.com/webcane/docker-deploy
сервис который хотим развернуть на удаленной машине представляет собой compose.yaml и при необходимости набор конфигов. хранится в git. меняем настройки локально, деплоим одной командой - docker deploy. Для vpn сервиса такой способ разворачивания тоже должен подойти
Спасибо, посмотрел репозиторий. Идея хорошая: это как раз тот слой, который у меня сейчас сделан грубо и прагматично - локально собрать bundle, отправить на хост по SSH/SCP и применить docker compose.
docker-deploy выглядит аккуратнее как отдельный Docker CLI plugin: deploy.yaml, exclude-ы, SFTP, host key checks, health status. В принципе, он мог бы заменить мой текущий upload/apply слой.
Но прямо сейчас я бы не стал встраивать его в ovpn как зависимость. Проект молодой, мой проект тоже молодой, а deploy в ovpn - это не только compose up -d: там ещё рендер Xray-конфига, users/quota sync, backup/cleanup, doctor checks и диагностика.
Склеивать два молодых инструмента в critical path деплоя - риск получить двойной набор edge cases: .env, secrets, sudo/docker permissions, rollback, partial deploy, volumes cleanup. Я скорее сначала вынесу свой SCP/apply слой за нормальный интерфейс, а потом уже можно будет сравнить реализации на живых деплоях.
Домашний удалённый доступ без панели: эксперимент с Xray, Docker Compose и локальным CLI (Часть 1)