- Главная конфигурация home.yml и виджеты (countdown, qbittorrent) - PowerShell и Bash скрипты для автоматической загрузки на сервер - Обновлен README с документацией
162 lines
5.7 KiB
Markdown
162 lines
5.7 KiB
Markdown
# 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).
|
||
|