Документация: рефакторинг структуры docs/ и очистка мусора
- Перемещена документация в docs/ с четкой структурой: - tutorials/ — пошаговые руководства (2mic-hat, installer) - integration/ — техническая интеграция (vad-wakeword, mqtt-led) - deployment/ — развёртывание (systemd-services) - architecture/ — архитектура проекта (overview) - Обновлён README.md с навигацией по документации - DEPLOY.md сокращён до quick start с ссылками на docs/ - Добавлен docs/README.md — индекс документации - Создан QWEN.md — контекст для ИИ-ассистента - Удалён мусор: - wyoming_satellite.zip (build artifact) - wyoming-led.service, wyoming-satellite.service (дубликаты) - .qwen/settings.json.orig (бэкап) - .lgd-nfy0 (пустой файл) - docker/run (заглушка) - Обновлён .gitignore: - examples/led_brightness_config.json (автогенерируемый конфиг) - *.old, *.bak, *~ (бэкапы) - *.zip (архивы) - .qwen/settings.json.orig - *.lgd-* (пустые файлы) - led_brightness_config.json исключён из отслеживания (assume-unchanged) Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
@@ -1,93 +1,73 @@
|
||||
# Развёртывание Wyoming Satellite
|
||||
# Deployment Guide
|
||||
|
||||
## Быстрый старт на новом сервере
|
||||
Quick start guide for deploying Wyoming Satellite.
|
||||
|
||||
## Quick Start
|
||||
|
||||
### 1. Clone and Install
|
||||
|
||||
### 1. Клонирование репозитория
|
||||
```bash
|
||||
git clone <repository-url> /path/to/Satellite
|
||||
cd Satellite
|
||||
```
|
||||
git clone <repository-url> ~/projects/Satellite
|
||||
cd ~/projects/Satellite
|
||||
|
||||
### 2. Создание виртуального окружения
|
||||
```bash
|
||||
# Вариант A: в домашней директории (рекомендуется)
|
||||
# Create virtual environment
|
||||
python3 -m venv ~/.venv_satellite
|
||||
source ~/.venv_satellite/bin/activate
|
||||
|
||||
# Вариант B: в projects
|
||||
python3 -m venv ~/projects/.venv_satellite
|
||||
source ~/projects/.venv_satellite/bin/activate
|
||||
```
|
||||
|
||||
### 3. Установка зависимостей
|
||||
```bash
|
||||
# Install dependencies
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### 4. Установка systemd сервисов
|
||||
### 2. Install systemd Services
|
||||
|
||||
```bash
|
||||
sudo ./install_systemd_services.sh
|
||||
```
|
||||
|
||||
Скрипт автоматически:
|
||||
- Найдёт виртуальное окружение
|
||||
- Определит текущего пользователя
|
||||
- Подставит правильные пути в service файлы
|
||||
- Установит wrapper `satellite-python` в `/usr/local/bin/`
|
||||
### 3. Start Services
|
||||
|
||||
### 5. Запуск сервисов
|
||||
```bash
|
||||
# LED сервис (опционально)
|
||||
sudo systemctl enable wyoming-event.service
|
||||
sudo systemctl start wyoming-event.service
|
||||
# LED control (optional, requires ReSpeaker)
|
||||
sudo systemctl enable --now wyoming-event.service
|
||||
|
||||
# Wyoming Satellite
|
||||
sudo systemctl enable wyoming-satelite-vosk.service
|
||||
sudo systemctl start wyoming-satelite-vosk.service
|
||||
sudo systemctl enable --now wyoming-satelite-vosk.service
|
||||
|
||||
# Wake Word сервис
|
||||
sudo systemctl enable wyoming-wakeword-vosk.service
|
||||
sudo systemctl start wyoming-wakeword-vosk.service
|
||||
# Wake word detection (Vosk)
|
||||
sudo systemctl enable --now wyoming-wakeword-vosk.service
|
||||
```
|
||||
|
||||
### 6. Проверка статуса
|
||||
### 4. Verify
|
||||
|
||||
```bash
|
||||
sudo systemctl status wyoming-event.service
|
||||
journalctl -u wyoming-event.service -f
|
||||
sudo systemctl status wyoming-satelite-vosk.service
|
||||
journalctl -u wyoming-satelite-vosk.service -f
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Структура service файлов
|
||||
## Full Documentation
|
||||
|
||||
Все service файлы используют плейсхолдеры, которые заменяются при установке:
|
||||
|
||||
| Плейсхолдер | Описание |
|
||||
|-------------|----------|
|
||||
| `__SAT_BASE_DIR__` | Путь к репозиторию Satellite |
|
||||
| `__SAT_VENV__` | Путь к виртуальному окружению |
|
||||
| `__CURRENT_USER__` | Имя пользователя |
|
||||
| `__HOME_DIR__` | Домашняя директория пользователя |
|
||||
- [**systemd Services**](deployment/systemd-services.md) — Detailed service configuration
|
||||
- [**Tutorials**](tutorials/installer.md) — Step-by-step installation guides
|
||||
|
||||
---
|
||||
|
||||
## Ручная установка (альтернатива)
|
||||
## Service Overview
|
||||
|
||||
Если скрипт не работает, можно вручную:
|
||||
| Service | Port | Description |
|
||||
|---------|------|-------------|
|
||||
| `wyoming-satelite-vosk.service` | 10700 | Main Wyoming satellite |
|
||||
| `wyoming-wakeword-vosk.service` | 10400 | Vosk wake word detection |
|
||||
| `wyoming-event.service` | 10500 | LED control + MQTT events |
|
||||
|
||||
1. Отредактировать файлы в `service/`, заменив плейсхолдеры
|
||||
2. Скопировать в `/etc/systemd/system/`
|
||||
3. Выполнить `sudo systemctl daemon-reload`
|
||||
## Configuration
|
||||
|
||||
---
|
||||
Service files use placeholders that are auto-replaced during installation:
|
||||
|
||||
## Wrapper `satellite-python`
|
||||
|
||||
Глобальный скрипт `/usr/local/bin/satellite-python` позволяет запускать Python из venv без указания полного пути:
|
||||
|
||||
```ini
|
||||
# В systemd сервисе
|
||||
ExecStart=satellite-python /path/to/script.py
|
||||
```
|
||||
|
||||
Это избавляет от необходимости прописывать пути к `.venv` в каждом сервисе.
|
||||
| Placeholder | Description |
|
||||
|-------------|-------------|
|
||||
| `__SAT_BASE_DIR__` | Path to Satellite repository |
|
||||
| `__SAT_VENV__` | Path to virtual environment |
|
||||
| `__CURRENT_USER__` | Current username |
|
||||
| `__HOME_DIR__` | User home directory |
|
||||
|
||||
Reference in New Issue
Block a user