Self-Host Wger auf Raspberry Pi, um Ihre Workouts und Gewinne zu planen und zu verfolgen
Die Planung Ihres Fitnessprogramms ist schwierig, und es ist schwieriger, den Überblick zu behalten. Wger ist eine selbst gehostete Web-App, die Ihnen hilft, Ihre Ziele zu verfolgen, Ihre Masse zu maximieren, Ihren Bizeps zu bewerten und Ihre Ernährung zu entwickeln. Es ist einfach einzurichten und wird mit mobilen Apps geliefert, um Ihren Fortschritt auf allen Geräten zu synchronisieren.
Warum selbst eine Workout-Tracking-Web-App auf Raspberry Pi hosten?
Wenn Sie ernsthaft Muskeln aufbauen, Gewicht verlieren oder anderweitig die Leistung und Ästhetik Ihres Körpers verbessern möchten, ist es wichtig, einen Plan zu erstellen und einen Plan zu führen und Aufzeichnungen zu führen.
Sie müssen wissen, was in Ihren Körper gelangt und welche lebenswichtigen Kalorien er als Brennstoff verbraucht. Sie müssen sicherstellen, dass Ihr Training ausgewogen und effektiv ist. Genauso wichtig ist, dass Sie messen müssen, welche Auswirkungen Ihr Training und Ihre Ernährung haben. Sind deine Oberschenkel dicker? Deine Gesäßmuskeln straffer? Bewegt sich Ihr Gewicht in die gewünschte Richtung?
Es gibt Dutzende von Apps, die Ihnen helfen, diese Faktoren zu verfolgen und aufzuzeichnen. Die meisten enthalten jedoch Werbung und basieren entweder auf einer Abonnementzahlungsoption oder verwenden das Freemium-Modell, wobei bestimmte Funktionen nicht funktionieren, es sei denn, Sie zahlen eine einmalige Gebühr. Fast alle sammeln Ihre Daten, sodass Sie von Werbefirmen verfolgt werden können, während Sie Ihre Muskelmasse verfolgen.
Eine andere Alternative besteht darin, Ihre Ernährung und Ihr Training in einer Excel-Tabelle akribisch aufzuzeichnen.
Wger ist ein voll ausgestatteter Trainingsmanager, den Sie selbst auf Ihrem Raspberry Pi hosten können. Es ist kostenlos und Open Source, was bedeutet, dass Sie es auf beliebige Weise ändern oder verteilen können. Es gibt keine Funktionen, die hinter Paywalls gesperrt sind, und da es auf Ihrer eigenen Hardware läuft, können Sie sicher sein, dass Sie auch niemand verfolgt.
So installieren Sie den Wger Workout Manager auf Ihrem Raspberry Pi
Wger ist eine ziemlich kräftige Anwendung, daher empfehlen wir Ihnen, einen Raspberry Pi 4B zu verwenden, wenn Ihnen einer zur Verfügung steht.
Befolgen Sie unsere Anleitung, um Ihren Raspberry Pi als Webserver einzurichten, und verbinden Sie sich dann mit Secure Shell (SSH) mit dem Pi.
Aktualisieren und aktualisieren Sie alle Pakete und klonen Sie dann das wger GitHub-Repository in ein neues Verzeichnis:
git clone https://github.com/wger-project/docker.git wger
Wechseln Sie in das neue Verzeichnis und verwenden Sie dann den Nano-Texteditor, um die Docker Compose-Datei zu öffnen:
cd wger
nano docker-compose.yml
Zum Zeitpunkt des Schreibens fehlt der Docker Compose-Datei eine Versionsanweisung am Anfang der Datei. Das bedeutet, dass es beim Versuch, Docker Compose aufzurufen, nicht funktioniert und die folgenden Fehler angezeigt werden:
Nicht unterstützte Konfigurationsoption für Netzwerke: ‚default ‚
Nicht unterstützte Konfigurationsoption für Dienste: „nginx “
Nicht unterstützte Konfigurationsoption für Volumes: „postgres-data “
Sie müssen eine Version von Docker Compose angeben. Es ist wichtig, eine Version vor Version 3 zu verwenden, da bestimmte Syntaxunterstützung, die in der wger Docker Compose-Datei verwendet wurde, in Version 3 der Docker Compose-Spezifikation entfernt, aber dann in Version 3.9 wieder eingeführt wurde – die derzeit nicht für Raspberry Pi OS verfügbar ist. Wenn Sie beispielsweise die Version 3.7 angeben, erhalten Sie diese oder ähnliche Fehlermeldungen:
services.web.depends_on enthält einen ungültigen Typ, es sollte ein Array sein
Wir haben festgestellt, dass die zuverlässigste Docker Compose-Version, um besser zum Laufen zu kommen, 2.2 war. Fügen Sie die folgende Zeile ganz am Anfang Ihrer Docker Compose-Datei ein:
version: '2.2'
Nginx ist in der Docker Compose-Datei von wger enthalten, und wger benötigt es, um zu funktionieren. Standardmäßig lauscht Nginx auf Port 80. Wenn Sie Ihren Pi jedoch zum Hosten anderer Websites und Dienste verwenden und unsere Anleitung zum Einrichten als Server befolgt haben, lauscht Apache bereits auf Port 80. Scrollen Sie nach unten zu nginx Abschnitt und suchen Sie die Zeile unter ports: die lautet 80:80 . Ändern Sie dies zu:
81:80
Speichern und beenden Sie nano mit Strg + O und dann Strg + X . Rufen Sie Docker Compose im getrennten Modus auf:
docker-compose up -d
…und warten Sie, während Docker Compose Images herunterlädt und die erforderlichen Container einrichtet. Führen Sie nach Abschluss des Vorgangs Folgendes aus:
docker-compose ps
…um den Status der Container zu sehen. Jeder sollte den Status „Up (gesund)“ haben.
Sie können jetzt Ihre wger-Instanz unter your-pi-local-ip-address:81 besuchen . Sie sehen ein inspirierendes Hintergrundbild von muskulösen Armen, die eine Langhantel in einem Schleier aus Schweißtropfen und Kreidestaub loslassen, aber Sie können sich nicht registrieren oder anmelden.
Um einen Domänennamen für den Zugriff auf wger zu verwenden, besuchen Sie die DNS-Seite Ihres Registrars und erstellen Sie einen neuen „A“-Eintrag. Setzen Sie den Host auf „@“ und den Wert auf Ihre öffentliche IP-Adresse.
Navigieren Sie zurück im Terminal zum Verzeichnis „ sites-available “ von Apache und verwenden Sie nano, um eine neue Konfigurationsdatei zu erstellen:
cd /etc/apache2/sites-available
sudo nano wger.conf
Fügen Sie in der neuen Datei Folgendes ein:
<VirtualHost *:80>
ServerName your-domain.tld
ProxyPass / http://127.0.0.1:81/
ProxyPassReverse / http:/127.0.0.1:81/
ProxyPreserveHost On
</VirtualHost>
Speichern und beenden Sie nano mit Strg + O , dann Strg + X . Aktivieren Sie die Konfiguration und starten Sie dann Apache neu:
sudo a2ensite wger.conf
sudo service apache2 restart
Sie können Ihre wger-Instanz jetzt mit Ihrem Domainnamen von jedem Browser aus besuchen. Klicken Sie oben auf der Seite auf die Schaltfläche Registrieren und geben Sie Ihren Namen, Ihre E-Mail-Adresse und Ihr Passwort ein. Tun Sie nichts weiter, oder Sie erhalten eine Fehlermeldung, die lautet:
CSRF-Verifizierung fehlgeschlagen. Anfrage abgebrochen
Dies liegt daran, dass wger Django als Datenbank verwendet und erfordert, dass vertrauenswürdige Quellen in einer separaten Umgebungsdatei definiert werden.
Fahren Sie Ihre Container herunter und verwenden Sie dann nano, um diese Datei zu öffnen:
docker-compose down
nano config/prod.env
Legen Sie die „Von“-Adresse für E-Mails fest und passen Sie Ihre Zeitzone an. Suchen Sie nun nach einer Zeile, die beginnt:
CSRF_TRUSTED_ORIGINS
Ändern Sie dies so, dass es Ihre Webadressen sowie die Loopback-Adresse des Pi enthält, und kommentieren Sie dann die folgende Zeile aus:
X_FORWARDED_PROTO_HEADER_SET=True
Wenn Sie nicht möchten, dass zufällige Personen im Internet auf Ihre wger-Instanz zugreifen, um ihre Workouts zu verfolgen, scrollen Sie weiter nach unten zum Abschnitt „Anwendung“ und legen Sie Folgendes fest:
ALLOW_REGISTRATION=False
ALLOW_GUEST_USERS=False
Speichern und beenden Sie nano mit Strg + O , dann Strg + X .
Als letztes müssen Sie TLS-Zertifikate und Verschlüsselungsschlüssel einrichten, um sicherzustellen, dass Schnüffler keinen Man-in-the-Middle-Angriff (MITM) verwenden können, um Ihren Datenverkehr abzufangen.
sudo certbot
Wählen Sie Ihren Domänennamen aus der Liste aus, und Certbot ruft TLS-Zertifikate und Verschlüsselungsschlüssel ab und stellt sie bereit. Starten Sie Apache erneut, damit die Änderungen wirksam werden:
sudo service apache2 restart
Jede Verbindung zu Ihrer wger-Trainingsseite wird auf HTTPS aktualisiert.
Verwenden Sie Wger auf Raspberry Pi, um Ihre Fitness zu verwalten
Nach all der harten Arbeit mit der Tastatur sind Sie fast bereit, ins Fitnessstudio zu gehen! Melden Sie sich mit den zuvor angegebenen Anmeldeinformationen bei Ihrem Konto an und Sie sehen ein leeres Dashboard mit drei Abschnitten: „Training“, „Ernährungsplan“ und „Gewicht“. Es liegt an Ihnen, die Daten in jedes dieser Felder einzugeben, indem Sie die grünen Schaltflächen am Ende jeder Spalte verwenden.
Sie können Einträge entweder manuell erstellen oder oben auf jeder Seite auf die Menüleiste für jede Kategorie klicken und eine CSV-Datei mit Ihren Daten importieren.
Das Menü für Training enthält alles, was mit Ihrem Training zu tun hat, einschließlich Zeitpläne, Kalender, Galerie und mehr. Klicken Sie auf Workouts und dann auf Workout hinzufügen . Geben Sie Ihrem Training einen Namen und aktivieren Sie dann die Kontrollkästchen, um die Tage auszuwählen, an denen Sie es durchführen möchten. Sobald Sie auf Speichern klicken , können Sie bestimmte Übungen zu Ihrem Trainingsprogramm hinzufügen. Während Sie in das Feld tippen, werden Vorschläge angezeigt, die diesen Text enthalten.
Wenn Sie die Übungen ausgewählt haben, können Sie mit einem Schieberegler die Anzahl der Wiederholungen einstellen und Details wie die beteiligten Gewichte hinzufügen. Speichern Sie das Training und Sie sehen eine Zusammenfassung, in der die zu trainierenden Muskelgruppen rot hervorgehoben sind. Sie können jeder Trainingseinheit Notizen hinzufügen, indem Sie auf das Zahnrad klicken und Neues Gewichtsprotokoll auswählen .
Unter Ernährung können Sie Ihren BMI überprüfen, Ernährungspläne erstellen und Ihre tägliche Kalorienzufuhr berechnen. Zutaten müssen nicht gesucht werden: Sie wählen Ihre täglichen Mahlzeiten aus über 78.000 Produkten aus und sehen die Nährwerte. Fügen Sie Mahlzeiten zum Ernährungsplan hinzu und behalten Sie im Kalender den Überblick über Ihre Ernährung.
Verfolgen Sie Ihr Training unterwegs
Nicht viele Leute nehmen einen Laptop mit ins Fitnessstudio, und obwohl wger in den meisten Browsern gut angezeigt wird, funktioniert es besser, wenn Sie die dedizierte wger-App für Android verwenden . Die App ist auch bei Google Play verfügbar .
Nachdem Sie die App auf Ihrem Android-Gerät installiert haben, öffnen Sie sie wie gewohnt und wählen Sie Benutzerdefinierten Server verwenden aus . Geben Sie Ihren Benutzernamen und Ihr Passwort ein und geben Sie dann die URL Ihres Servers ein.
Die mobile wger-App funktioniert genauso wie die Web-App. Sie können auf Ihre Trainingsprotokolle zugreifen, Trainingseinheiten hinzufügen und Ihre Ernährungspläne eingeben.
Installieren Sie Wger auf Ihrem Raspberry Pi: Erfolg
Wger ist die perfekte Lösung, wenn dir Datenschutz wichtig ist und du ernsthafte Workouts und Diäten planen möchtest, ohne dass deine Daten an Dritte verkauft werden. Wenn Sie dies nicht betrifft, ziehen Sie eines der vielen kommerziellen Angebote in Betracht, die in mobilen App-Stores verfügbar sind.
Schreibe einen Kommentar