Projektarbeit-MYP/docs/RASPBERRY_PI_SETUP.md

121 lines
2.7 KiB
Markdown

# MYP Platform - Raspberry Pi Setup
## Schnellstart
### 1. Projekt kopieren
```bash
scp -r Projektarbeit-MYP user@raspberrypi:/home/user/
```
### 2. Setup ausführen
```bash
ssh user@raspberrypi
cd /home/user/Projektarbeit-MYP/backend
chmod +x setup_raspberry_pi.sh
./setup_raspberry_pi.sh
```
### 3. Zugriff
- **URL**: https://raspberrypi
- **Login**: admin@mercedes-benz.com
- **Passwort**: 744563017196A
## Was wird installiert?
### System-Pakete
- Python 3 + pip + venv
- Nginx (Reverse Proxy)
- Supervisor (Process Manager)
- SQLite3 (Datenbank)
- OpenSSL (SSL-Zertifikate)
- Build-Tools (gcc, make, etc.)
### Python-Abhängigkeiten
- Flask 2.3.3 (Web Framework)
- SQLAlchemy 2.0.21 (ORM)
- cryptography 41.0.4 (SSL)
- PyP100 0.1.4 (Tapo Smart Plugs)
- psutil 5.9.5 (System Monitoring)
- gunicorn 21.2.0 (Production Server)
- RPi.GPIO 0.7.1 (Hardware Interface)
- Weitere 20+ Pakete (siehe requirements.txt)
### Services
- **myp-platform.service**: Hauptanwendung
- **nginx**: Reverse Proxy + SSL
- **supervisor**: Process Management
- **ufw**: Firewall (Ports 22, 80, 443)
### Verzeichnisstruktur
```
/home/user/Projektarbeit-MYP/
├── backend/
│ ├── app/ # Hauptanwendung
│ │ ├── database/myp.db # SQLite Datenbank
│ │ └── logs/ # Log-Dateien
│ ├── certs/ # SSL-Zertifikate
│ ├── venv/ # Python Virtual Environment
│ └── requirements.txt # Python-Abhängigkeiten
└── frontend/ssl/ # Frontend SSL-Zertifikate
```
### Hardkodierte Drucker
- **Printer 1**: 192.168.0.100
- **Printer 2**: 192.168.0.101
- **Printer 3**: 192.168.0.102
- **Printer 4**: 192.168.0.103
- **Printer 5**: 192.168.0.104
- **Printer 6**: 192.168.0.106
## Wartung
### Service-Befehle
```bash
# Status prüfen
sudo systemctl status myp-platform
# Neu starten
sudo systemctl restart myp-platform
# Logs anzeigen
sudo journalctl -u myp-platform -f
```
### Drucker neu einrichten
```bash
cd /home/user/Projektarbeit-MYP/backend/app
source ../venv/bin/activate
python setup_drucker_db.py
```
### SSL-Zertifikate erneuern
```bash
cd /home/user/Projektarbeit-MYP/backend/app
source ../venv/bin/activate
python -c "from utils.ssl_manager import ssl_manager; ssl_manager.generate_mercedes_certificate()"
sudo systemctl restart nginx
```
## Troubleshooting
### Service startet nicht
```bash
sudo journalctl -u myp-platform -n 50
```
### Manueller Start (Debug)
```bash
cd /home/user/Projektarbeit-MYP/backend/app
source ../venv/bin/activate
python app.py
```
### Ports prüfen
```bash
sudo netstat -tlnp | grep :443
sudo netstat -tlnp | grep :80
```
## Vollständige Dokumentation
Siehe: `DEPLOYMENT.md` für detaillierte Anweisungen.