Self-host Wger su Raspberry Pi per pianificare e tenere traccia dei tuoi allenamenti e guadagni

Self-host Wger su Raspberry Pi per pianificare e tenere traccia dei tuoi allenamenti e guadagni

Pianificare il tuo regime di fitness è difficile e tenerne traccia è più difficile. Wger è un’app Web self-hosted per aiutarti a monitorare i tuoi obiettivi, massimizzare la tua massa, confrontare i tuoi bicipiti e ideare la tua dieta. È semplice da configurare e viene fornito con app mobili per sincronizzare i tuoi progressi su tutti i dispositivi.

Perché ospitare autonomamente un’app Web per il monitoraggio dell’allenamento su Raspberry Pi?

ragazzo molto muscoloso in un giubbotto da superman che fa esercizio

Se sei seriamente intenzionato ad aumentare la massa muscolare, perdere peso o migliorare in altro modo le prestazioni e l’estetica del tuo corpo, è importante fare un piano, tenere un piano e tenere dei registri.

Devi sapere cosa entra nel tuo corpo e le calorie vitali che sta consumando come carburante; devi assicurarti che i tuoi allenamenti siano equilibrati ed efficaci. Altrettanto importante, è necessario misurare quali effetti stanno avendo i tuoi allenamenti e le tue diete. Le tue cosce sono più spesse? I tuoi glutei più stretti? Il tuo peso si sta muovendo nella direzione che desideri?

Esistono dozzine di app che ti aiuteranno a tenere traccia e registrare questi fattori. La maggior parte, tuttavia, contiene pubblicità e si basa su un’opzione di pagamento in abbonamento o utilizza il modello freemium, con alcune funzionalità non funzionali a meno che non si paghi una tariffa una tantum. Quasi tutti raccolgono i tuoi dati, quindi puoi essere monitorato dalle società pubblicitarie anche mentre monitori la tua massa muscolare.

Un’altra alternativa è tenere registri meticolosi della dieta e degli allenamenti in un foglio di calcolo Excel.

Wger è un gestore di allenamenti completo che puoi ospitare autonomamente sul tuo Raspberry Pi. È gratuito e open source, il che significa che puoi modificarlo o distribuirlo in qualsiasi modo tu scelga. Non ci sono funzionalità bloccate dietro paywall e poiché è in esecuzione su hardware di tua proprietà, puoi essere certo che nessuno ti stia monitorando.

Come installare Wger Workout Manager sul tuo Raspberry Pi

Wger è un’applicazione abbastanza robusta, quindi ti suggeriamo di utilizzare un Raspberry Pi 4B se ce n’è uno a tua disposizione.

Segui la nostra guida per configurare il tuo Raspberry Pi come server Web, quindi connettiti al Pi utilizzando Secure Shell (SSH).

Aggiorna e aggiorna tutti i pacchetti, quindi clona il repository GitHub wger ​​in una nuova directory:

git clone https://github.com/wger-project/docker.git wger

Passare alla nuova directory, quindi utilizzare l’editor di testo nano per aprire il file Docker Compose:

cd wger
nano docker-compose.yml

Al momento della scrittura, il file Docker Compose manca di una direttiva di versione nella parte superiore del file. Ciò significa che se provi ad aprire Docker Compose, non funzionerà e vedrai i seguenti errori:

Opzione di configurazione non supportata per le reti: ‘default

Opzione di configurazione non supportata per i servizi: ‘nginx

Opzione di configurazione non supportata per i volumi: ‘postgres-data

Dovrai specificare una versione di Docker Compose. È essenziale utilizzare una versione precedente alla versione 3, poiché alcuni supporti di sintassi utilizzati nel file wger ​​Docker Compose sono stati rimossi nella versione 3 della specifica Docker Compose, ma sono stati reintrodotti nella versione 3.9, che al momento non è disponibile per il sistema operativo Raspberry Pi. Se specifichi la versione 3.7, ad esempio, vedrai questo o altri messaggi di errore simili:

services.web.depends_on contiene un tipo non valido, dovrebbe essere un array

Abbiamo scoperto che la versione Docker Compose più affidabile per far funzionare wger ​​era la 2.2. Inserisci la seguente riga all’inizio del tuo file Docker Compose:

version: '2.2'

Nginx è incluso nel file wger ​​Docker Compose e wger ​​lo richiede per funzionare. Per impostazione predefinita, Nginx è in ascolto sulla porta 80. Tuttavia, se stai utilizzando il tuo Pi per ospitare altri siti e servizi e hai seguito la nostra guida per configurarlo come server, hai già Apache in ascolto sulla porta 80. Scorri verso il basso fino a nginx section e trova la riga sotto ports: che recita 80:80 . Cambia questo in:

81:80

Salva ed esci da nano con Ctrl + O quindi Ctrl + X . Apri Docker Compose in modalità separata:

docker-compose up -d

…e attendi che Docker Compose scarichi le immagini e imposti i contenitori necessari. Al termine del processo, eseguire:

docker-compose ps

…per vedere lo stato dei contenitori. Ognuno dovrebbe avere lo stato “Su (sano)”.

output di docker-compose ps in un bel termine retrò

Ora puoi visitare la tua istanza wger ​​su your-pi-local-ip-address:81 . Vedrai un’immagine di sfondo stimolante di un paio di braccia molto muscolose che rilasciano un bilanciere in una foschia di goccioline di sudore e polvere di gesso, ma non sarai in grado di registrarti o accedere.

Per utilizzare un nome di dominio per accedere a wger, visita la pagina DNS del tuo registrar e crea un nuovo record “A”. Imposta l’host su “@” e il valore sul tuo indirizzo IP pubblico.

Di nuovo nel terminale, vai alla directory dei siti disponibili di Apache e usa nano per creare un nuovo file di configurazione:

cd /etc/apache2/sites-available
sudo nano wger.conf

Nel nuovo file, incolla:

<VirtualHost *:80>
ServerName your-domain.tld
ProxyPass / http://127.0.0.1:81/
ProxyPassReverse / http:/127.0.0.1:81/
ProxyPreserveHost On
</VirtualHost>

Salva ed esci da nano con Ctrl + O , quindi Ctrl + X . Attiva la configurazione, quindi riavvia Apache:

sudo a2ensite wger.conf
sudo service apache2 restart

Ora puoi visitare la tua istanza wger ​​con il tuo nome di dominio da qualsiasi browser. Premi il pulsante Registrati nella parte superiore della pagina e inserisci il tuo nome, indirizzo email e password. Non fare nient’altro o riceverai un messaggio di errore che recita:

Verifica CSRF non riuscita. Richiesta interrotta

Questo perché wger ​​utilizza Django come database e richiede che le fonti attendibili siano definite in un file di ambiente separato.

file di ambiente wger ​​in nano

Abbassa i tuoi contenitori, quindi usa nano per aprire questo file:

docker-compose down
nano config/prod.env

Imposta l’indirizzo “da” per le e-mail e modifica il fuso orario. Ora cerca una riga che inizi:

CSRF_TRUSTED_ORIGINS

Modificalo in modo che contenga i tuoi indirizzi web, nonché l’indirizzo di loopback del Pi, quindi decommenta la seguente riga:

X_FORWARDED_PROTO_HEADER_SET=True

Se non vuoi che persone casuali su Internet accedano alla tua istanza wger ​​per tenere traccia dei loro allenamenti, scorri verso il basso fino alla sezione “Applicazione” e imposta:

ALLOW_REGISTRATION=False
ALLOW_GUEST_USERS=False

Salva ed esci da nano con Ctrl + O , quindi Ctrl + X .

L’ultima cosa da fare è configurare i certificati TLS e le chiavi di crittografia per garantire che i ficcanaso non possano utilizzare un attacco man-in-the-middle (MITM) per intercettare il tuo traffico.

sudo certbot

Seleziona il tuo nome di dominio dall’elenco e Certbot recupererà e distribuirà i certificati TLS e le chiavi di crittografia. Riavvia Apache ancora una volta per rendere effettive le modifiche:

sudo service apache2 restart

Qualsiasi connessione al tuo sito di allenamento wger ​​verrà aggiornata a HTTPS.

Usa Wger su Raspberry Pi per gestire la tua forma fisica

donna accovacciata con bilanciere

Dopo tutto quel duro lavoro con la tastiera, sei quasi pronto per andare in palestra! Accedi al tuo account utilizzando le credenziali che hai fornito in precedenza e vedrai una dashboard vuota con tre sezioni: “Allenamento”, “Piano nutrizionale” e “Peso”. Sta a te inserire i dati in ognuno di questi, utilizzando i pulsanti verdi nella parte inferiore di ogni colonna.

cruscotto wger

Puoi creare le voci manualmente o fare clic sulla barra dei menu per ogni categoria nella parte superiore di ogni pagina e importare un file CSV con i tuoi dati.

Il menu Allenamento contiene tutto ciò che riguarda i tuoi allenamenti, inclusi programmi, calendario, galleria e altro. Fare clic su Allenamenti , quindi su Aggiungi allenamento . Assegna un nome al tuo allenamento, quindi seleziona le caselle di controllo per selezionare i giorni in cui desideri eseguirlo. Dopo aver fatto clic su Salva , sarai in grado di aggiungere esercizi specifici alla tua routine di allenamento. Mentre digiti nella casella, vedrai apparire suggerimenti che contengono questo testo.

suggerimenti wger ​​per l'esercizio crunch

Dopo aver selezionato gli esercizi, puoi utilizzare un dispositivo di scorrimento per impostare il numero di ripetizioni e aggiungere dettagli come i pesi coinvolti. Salva l’allenamento e vedrai un riepilogo, con i gruppi muscolari da allenare evidenziati in rosso. Puoi aggiungere note a qualsiasi sessione di allenamento facendo clic sull’ingranaggio e selezionando Nuovo registro pesi .

esempio di allenamento wger

In Nutrizione , puoi controllare il tuo indice di massa corporea, creare piani nutrizionali e calcolare il tuo apporto calorico giornaliero. Non c’è bisogno di cercare gli ingredienti: scegli i tuoi pasti quotidiani tra più di 78.000 prodotti e vedi i valori nutrizionali. Aggiungi i pasti al piano nutrizionale e mantieni una panoramica della tua dieta nel calendario.

Tieni traccia dei tuoi allenamenti in movimento

Non molte persone portano un laptop in palestra e, sebbene wger ​​venga visualizzato bene attraverso la maggior parte dei browser, funziona meglio se si utilizza l’ app wger ​​dedicata per Android . L’app è disponibile anche su Google Play .

Dopo aver installato l’app sul tuo dispositivo Android, aprila nel solito modo e scegli Usa server personalizzato . Inserisci il tuo nome utente e password, quindi inserisci l’URL del tuo server.

L’app mobile wger ​​funziona allo stesso modo dell’app web. Puoi accedere ai tuoi registri di allenamento, aggiungere allenamenti e inserire i tuoi programmi alimentari.

Installa Wger sul tuo Raspberry Pi: successo

Wger è la soluzione perfetta se hai a cuore la privacy e vuoi pianificare allenamenti e diete serie senza che i tuoi dati vengano venduti a terzi. Se questo non ti riguarda, considera una delle tante offerte commerciali disponibili sugli app store per dispositivi mobili.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *