# OVHserver Infrastructure Production infrastructure для AI-Impress с полной автоматизацией, мониторингом и системой бэкапов. **Сервер:** ubuntu@51.89.231.46 **GitHub:** [SamoilenkoVadym/OVHserver](https://github.com/SamoilenkoVadym/OVHserver) --- ## Трёхуровневая система синхронизации ### 🔄 1. Syncthing (Реального времени) Мгновенная двусторонняя синхронизация между Mac и сервером. - **Режим:** Send & Receive (bidirectional) - **Папки:** `/opt`, `/data`, `/home/ubuntu`, `/mnt` - **Автозапуск:** systemd (сервер) + brew services (Mac) - **Скорость:** 10-30 секунд ### 📦 2. GitHub (Версионный контроль) Полная история изменений кода и конфигураций. - **Репозиторий:** git@github.com:SamoilenkoVadym/OVHserver.git - **Автопуш:** Через post-commit hook - **Защита:** pre-commit hook блокирует коммит секретов ### 💾 3. rsync (Системный бэкап) Полная копия сервера для восстановления. - **Назначение:** Disaster recovery - **Запуск:** По требованию - **Хранение:** `/Volumes/SSD/Aimpress_Cloud_Prod/system-backup/` --- ## Структура проекта ``` . ├── opt/ # Основные проекты │ ├── 00-infrastructure/ # Traefik, PostgreSQL, Redis, Vault, RabbitMQ │ ├── 01-security/ # Authentik (SSO), Vaultwarden │ ├── 02-core/ # n8n, Evolution API, Supabase │ ├── 03-business/ # Odoo, Outline, Documenso, Wiki.js │ ├── 04-tools/ # Portainer, Grafana, Monitoring, Uptime Kuma │ ├── 05-backups/ # Бэкапы и скрипты (не в Git) │ └── 06-webflow/ # Landing pages ├── data/ # Данные приложений ├── home/ # /home/ubuntu ├── mnt/ # Смонтированные диски │ ├── backups/ # Бэкапы системы (6.8GB) │ └── psql-data/ # Данные PostgreSQL └── .claude/ # Документация для Claude Code ├── workflow.md # Рабочий процесс └── project-structure.md # Детальная структура ``` Подробная документация в [.claude/project-structure.md](.claude/project-structure.md) --- ## Технологический стек ### Инфраструктура - **Docker** + **Docker Compose** - контейнеризация - **Traefik** - reverse proxy с автоматическим SSL - **PostgreSQL** - основная БД - **Redis** - кэш и очереди - **RabbitMQ** - message broker ### Безопасность - **HashiCorp Vault** - управление секретами - **Authentik** - SSO (Single Sign-On) - **Vaultwarden** - менеджер паролей ### Мониторинг - **Prometheus** + **Grafana** - метрики и дашборды - **Loki** - агрегация логов - **Uptime Kuma** - проверка доступности ### Бизнес-приложения - **Odoo** - ERP система - **n8n** - workflow automation - **Evolution API** - WhatsApp Business API - **Supabase** - Backend-as-a-Service - **Outline** - корпоративная wiki - **Documenso** - электронная подпись --- ## Быстрый старт ### Проверка синхронизации ```bash # Статус Syncthing на сервере ssh ubuntu@51.89.231.46 "systemctl --user status syncthing" # Статус на Mac brew services list | grep syncthing # Размер синхронизированных данных du -sh /Volumes/SSD/Aimpress_Cloud_Prod/{opt,data,home} ``` ### Git операции ```bash # Проверить статус git status # Посмотреть последние коммиты git log --oneline -20 # Сделать коммит (push автоматический через hook) git add . git commit -m "feat: add new feature" ``` ### Доступ к сервисам Все сервисы доступны через Traefik с автоматическим SSL: - **Portainer:** portainer.domain.com - **Grafana:** grafana.domain.com - **Authentik:** authentik.domain.com - **Odoo:** odoo.domain.com - **n8n:** n8n.domain.com --- ## Работа с проектом через Claude Code ### Рабочий процесс 1. Пользователь даёт задачу Claude 2. Claude работает с **локальными файлами** на Mac 3. Syncthing автоматически синхронизирует изменения на сервер (10-30 сек) 4. Claude делает git commit с понятным сообщением 5. Git hook автоматически пушит в GitHub ### Формат коммитов ``` : 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude ``` **Типы коммитов:** - `feat:` - новая функция - `fix:` - исправление бага - `refactor:` - рефакторинг кода - `docs:` - документация - `chore:` - обслуживание (конфиги, зависимости) - `perf:` - улучшение производительности Полная документация в [.claude/workflow.md](.claude/workflow.md) --- ## Безопасность ### Git Hooks **pre-commit:** - Блокирует коммит файлов `.env`, `.key`, `.pem` - Предупреждает о потенциальных секретах в коде - Можно пропустить: `git commit --no-verify` **post-commit:** - Автоматически пушит каждый коммит в GitHub - Работает с ветками main/master ### .gitignore Исключены из Git: - Зависимости: `node_modules`, `__pycache__`, `venv` - Логи: `*.log`, `logs/` - Секреты: `.env`, `*.key`, `*.pem` - Бэкапы: `05-backups/`, `*.sql.gz`, `*.tar.gz` - Временные: `.cache`, `*.tmp`, `.DS_Store` --- ## Мониторинг и поддержка ### Проверка здоровья сервисов ```bash # Docker контейнеры ssh ubuntu@51.89.231.46 "docker ps" # Логи контейнера ssh ubuntu@51.89.231.46 "docker logs " # Disk usage ssh ubuntu@51.89.231.46 "df -h" ``` ### Бэкапы - **Автоматические:** В `/opt/05-backups/` - **Restic:** Инкрементальные бэкапы - **Скрипты:** В `/opt/05-backups/scripts/` - **Документация:** `/opt/05-backups/SCRIPTS-REGISTRY.md` ### Uptime Kuma Мониторинг доступности всех сервисов 24/7 через веб-интерфейс. --- ## Восстановление системы ### Из rsync бэкапа ```bash # Полное восстановление (осторожно!) rsync -avz --progress /Volumes/SSD/Aimpress_Cloud_Prod/system-backup/ ubuntu@51.89.231.46:/ ``` ### Из Git ```bash # Откат к предыдущему коммиту git log --oneline git checkout -- git commit -m "chore: rollback to " ``` ### Из Restic ```bash # Посмотреть snapshots restic snapshots # Восстановить конкретный snapshot restic restore --target /restore/path ``` --- ## Документация - **[.claude/workflow.md](.claude/workflow.md)** - Рабочий процесс Claude Code - **[.claude/project-structure.md](.claude/project-structure.md)** - Детальная структура проекта - **[opt/05-backups/SCRIPTS-REGISTRY.md](opt/05-backups/SCRIPTS-REGISTRY.md)** - Реестр скриптов - **[opt/05-backups/README-SCRIPTS.md](opt/05-backups/README-SCRIPTS.md)** - Документация скриптов --- ## Контакты и поддержка - **GitHub Issues:** [SamoilenkoVadym/OVHserver/issues](https://github.com/SamoilenkoVadym/OVHserver/issues) - **Сервер:** ubuntu@51.89.231.46 --- ## Лицензия Private repository - все права защищены. --- **Последнее обновление:** 2025-11-05 **Версия инфраструктуры:** 1.0.0