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

162 lines
5.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Glance Dashboard Configuration
Конфигурация для [Glance](https://github.com/glanceapp/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 Subsystem for Linux)](https://docs.microsoft.com/ru-ru/windows/wsl/install)
- PowerShell 5.1+ (предустановлен в Windows 10/11)
- SSH доступ к серверу с Glance
### Установка WSL (только для Windows)
```powershell
# Запустите PowerShell от имени администратора
wsl --install
```
После установки перезагрузите компьютер.
## 📤 Загрузка конфигурации на сервер
### Linux/macOS
```bash
# С параметрами по умолчанию (./glance, root@192.168.50.114)
./upload-glance-config.sh
# С произвольными параметрами
./upload-glance-config.sh /path/to/glance username 192.168.50.100
```
### Windows
```powershell
# С параметрами по умолчанию
.\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` для организации виджетов:
```yaml
# В home.yml
pages:
- name: Главная
columns:
- size: full
widgets:
- type: include
path: widgets/bookmarks-homelab.yml
```
### Преимущества модульной структуры
- ✅ Легче управлять и редактировать отдельные виджеты
- ✅ Переиспользование виджетов в разных страницах
- ✅ Простота версионирования и отладки
- ✅ Чище git история изменений
## 🔧 Настройка SSH ключей (рекомендуется)
Для автоматической загрузки без ввода пароля:
```bash
# Сгенерируйте SSH ключ (если еще не создан)
ssh-keygen -t ed25519 -C "glance-config"
# Скопируйте ключ на сервер
ssh-copy-id root@192.168.50.114
```
## 🐛 Устранение неполадок
### Windows: "wsl: команда не найдена"
Убедитесь, что WSL установлен:
```powershell
wsl --version
```
Если WSL не установлен, выполните:
```powershell
wsl --install
```
### Ошибка SSH подключения
Проверьте подключение вручную:
```bash
ssh root@192.168.50.114
```
### Директория не найдена
Убедитесь, что вы запускаете скрипт из правильной директории:
```bash
# Linux/macOS
ls -la glance/
# PowerShell
Get-ChildItem glance/
```
## 📚 Полезные ссылки
- [Glance Documentation](https://github.com/glanceapp/glance)
- [Glance Configuration Examples](https://github.com/glanceapp/glance/blob/main/docs/configuration.md)
- [WSL Documentation (RU)](https://docs.microsoft.com/ru-ru/windows/wsl/)
## 📝 Лицензия
Этот проект следует лицензии основного проекта [Glance](https://github.com/glanceapp/glance).