Files
glance/README.md
Dokril abd62d8f73 feat: конфигурация Glance с виджетами и скриптами развертывания
- Главная конфигурация home.yml и виджеты (countdown, qbittorrent)
- PowerShell и Bash скрипты для автоматической загрузки на сервер
- Обновлен README с документацией
2025-12-06 09:45:17 +03:00

5.7 KiB
Raw Blame History

Glance Dashboard Configuration

Конфигурация для Glance - минималистичного дашборда для самостоятельного хостинга.

📁 Структура проекта

glance/
├── home.yml                      # Главный файл конфигурации
├── widgets/                      # Отдельные виджеты (модульная структура)
│   ├── bookmarks-homelab.yml    # Закладки Homelab
│   ├── qbittorrent.yml          # Виджет qBittorrent
│   └── ...                      # Другие виджеты
├── upload-glance-config.sh      # Shell скрипт для загрузки конфигурации
├── upload-glance-config.ps1     # PowerShell обертка (использует WSL)
└── README.md                    # Этот файл

🚀 Установка и настройка

Требования

Для Linux/macOS:

  • bash
  • ssh и scp (обычно предустановлены)
  • SSH доступ к серверу с Glance

Для Windows:

Установка WSL (только для Windows)

# Запустите PowerShell от имени администратора
wsl --install

После установки перезагрузите компьютер.

📤 Загрузка конфигурации на сервер

Linux/macOS

# С параметрами по умолчанию (./glance, root@192.168.50.114)
./upload-glance-config.sh

# С произвольными параметрами
./upload-glance-config.sh /path/to/glance username 192.168.50.100

Windows

# С параметрами по умолчанию
.\upload-glance-config.ps1

# С произвольными параметрами
.\upload-glance-config.ps1 -LocalDir "e:\repos\glance" -User "root" -Host "192.168.50.114"

# Или в кратком виде
.\upload-glance-config.ps1 "e:\repos\glance" "root" "192.168.50.114"

Примечание: PowerShell скрипт является оберткой, которая вызывает shell скрипт через WSL, избегая дублирования кода.

⚙️ Параметры скрипта

Параметр Описание Значение по умолчанию
LOCAL_DIR / -LocalDir Локальная директория с конфигурацией ./glance
USER / -User Пользователь SSH root
HOST / -Host IP адрес или hostname сервера 192.168.50.114

📋 Что делает скрипт

  1. Загружает home.yml/opt/glance/config/glance.yml на сервере
  2. Синхронизирует директорию widgets//opt/glance/config/widgets/ на сервере
  3. Автоматически создает необходимые директории на сервере
  4. Проверяет наличие файлов и директорий перед загрузкой

Glance автоматически перезагружает конфигурацию при обнаружении изменений.

🎨 Модульная структура виджетов

Конфигурация использует функцию include для организации виджетов:

# В home.yml
pages:
  - name: Главная
    columns:
      - size: full
        widgets:
          - type: include
            path: widgets/bookmarks-homelab.yml

Преимущества модульной структуры

  • Легче управлять и редактировать отдельные виджеты
  • Переиспользование виджетов в разных страницах
  • Простота версионирования и отладки
  • Чище git история изменений

🔧 Настройка SSH ключей (рекомендуется)

Для автоматической загрузки без ввода пароля:

# Сгенерируйте SSH ключ (если еще не создан)
ssh-keygen -t ed25519 -C "glance-config"

# Скопируйте ключ на сервер
ssh-copy-id root@192.168.50.114

🐛 Устранение неполадок

Windows: "wsl: команда не найдена"

Убедитесь, что WSL установлен:

wsl --version

Если WSL не установлен, выполните:

wsl --install

Ошибка SSH подключения

Проверьте подключение вручную:

ssh root@192.168.50.114

Директория не найдена

Убедитесь, что вы запускаете скрипт из правильной директории:

# Linux/macOS
ls -la glance/

# PowerShell
Get-ChildItem glance/

📚 Полезные ссылки

📝 Лицензия

Этот проект следует лицензии основного проекта Glance.