Self-Host Wger en Raspberry Pi para planificar y realizar un seguimiento de sus entrenamientos y ganancias

Self-Host Wger en Raspberry Pi para planificar y realizar un seguimiento de sus entrenamientos y ganancias

Planificar su régimen de acondicionamiento físico es difícil y hacer un seguimiento de él es más difícil. Wger es una aplicación web autohospedada para ayudarlo a rastrear sus objetivos, maximizar su masa, comparar sus bíceps y diseñar su dieta. Es fácil de configurar y viene con aplicaciones móviles para sincronizar su progreso entre dispositivos.

¿Por qué hospedar una aplicación web de seguimiento de ejercicios en Raspberry Pi?

tipo muy musculoso en un chaleco superman haciendo ejercicio

Si realmente quiere ganar músculo, perder peso o mejorar el rendimiento y la estética de su cuerpo, es importante hacer un plan, mantener un plan y llevar registros.

Necesita saber lo que ingresa a su cuerpo y las calorías vitales que consume como combustible; debe asegurarse de que sus entrenamientos sean equilibrados y efectivos. Igual de importante, necesita medir qué efectos están teniendo sus entrenamientos y dietas. ¿Tus muslos son más gruesos? ¿Tus glúteos más apretados? ¿Tu peso se mueve en la dirección que quieres?

Hay docenas de aplicaciones que lo ayudarán a rastrear y registrar estos factores. Sin embargo, la mayoría contienen anuncios y se basan en una opción de pago de suscripción o utilizan el modelo freemium, con ciertas características que no funcionan a menos que pague una tarifa única. Casi todos recopilan sus datos, por lo que las empresas de publicidad pueden rastrearlo incluso mientras rastrea su masa muscular.

Otra alternativa es mantener registros minuciosos de su dieta y entrenamientos en una hoja de cálculo de Excel.

Wger es un administrador de entrenamiento con todas las funciones que puede alojar en su Raspberry Pi. Es gratuito y de código abierto, lo que significa que puede modificarlo o distribuirlo de la forma que elija. No hay funciones bloqueadas detrás de los muros de pago y debido a que se ejecuta en el hardware de su propiedad, puede estar seguro de que nadie lo rastreará tampoco.

Cómo instalar Wger Workout Manager en tu Raspberry Pi

Wger es una aplicación bastante robusta, por lo que le sugerimos que use una Raspberry Pi 4B si hay una disponible para usted.

Siga nuestra guía para configurar su Raspberry Pi como un servidor web, luego conéctese al Pi usando Secure Shell (SSH).

Actualice y actualice todos los paquetes, luego clone el repositorio wger ​​GitHub en un nuevo directorio:

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

Cambie al nuevo directorio, luego use el editor de texto nano para abrir el archivo Docker Compose:

cd wger
nano docker-compose.yml

Al momento de escribir, el archivo Docker Compose carece de una directiva de versión en la parte superior del archivo. Esto significa que si intenta abrir Docker Compose, no funcionará y verá los siguientes errores:

Opción de configuración no compatible para redes: ‘predeterminado

Opción de configuración no admitida para servicios: ‘nginx

Opción de configuración no admitida para volúmenes: ‘postgres-data

Deberá especificar una versión de Docker Compose. Es esencial usar una versión anterior a la versión 3, ya que cierta compatibilidad de sintaxis utilizada en el archivo wger ​​Docker Compose se eliminó en la versión 3 de la especificación Docker Compose, pero luego se reintrodujo en la versión 3.9, que actualmente no está disponible para Raspberry Pi OS. Si especifica la versión 3.7, por ejemplo, verá este mensaje de error u otros similares:

services.web.depends_on contiene un tipo no válido, debe ser una matriz

Descubrimos que la versión de Docker Compose más confiable para que wger ​​funcionara era la 2.2. Inserte la siguiente línea al comienzo de su archivo Docker Compose:

version: '2.2'

Nginx está incluido en el archivo wger ​​Docker Compose y wger ​​lo requiere para funcionar. De forma predeterminada, Nginx escucha en el puerto 80. Sin embargo, si está utilizando su Pi para alojar otros sitios y servicios y siguió nuestra guía para configurarlo como servidor, ya tiene Apache escuchando en el puerto 80. Desplácese hacia abajo hasta nginx y busque la línea debajo de ports: que dice 80:80 . Cambia esto a:

81:80

Guarde y salga de nano con Ctrl + O y luego Ctrl + X. Abre Docker Compose en modo separado:

docker-compose up -d

…y espere mientras Docker Compose descarga imágenes y configura los contenedores necesarios. Cuando se complete el proceso, ejecute:

docker-compose ps

…para ver el estado de los contenedores. Cada uno debe tener el estado «Up (saludable)».

salida de docker-compose ps en términos retro geniales

Ahora puede visitar su instancia de wger ​​en your-pi-local-ip-address:81 . Verá una imagen de fondo inspiradora de unos brazos muy musculosos que sueltan una barra en una neblina de gotas de sudor y polvo de tiza, pero no podrá registrarse ni iniciar sesión.

Para usar un nombre de dominio para acceder a wger, visite la página DNS de su registrador y cree un nuevo registro «A». Establezca el host en «@» y el valor en su dirección IP pública.

De vuelta en la terminal, navegue hasta el directorio de sitios disponibles de Apache y use nano para crear un nuevo archivo de configuración:

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

En el nuevo archivo, pegue:

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

Guarde y salga de nano con Ctrl + O , luego Ctrl + X . Active la configuración, luego reinicie Apache:

sudo a2ensite wger.conf
sudo service apache2 restart

Ahora puede visitar su instancia de wger ​​con su nombre de dominio desde cualquier navegador. Presione el botón Registrarse en la parte superior de la página e ingrese su nombre, dirección de correo electrónico y contraseña. No haga nada más, o recibirá un mensaje de error que dice:

La verificación CSRF falló. Solicitud abortada

Esto se debe a que wger ​​usa Django como base de datos y requiere que las fuentes confiables se definan en un archivo de entorno separado.

archivo de entorno wger ​​en nano

Baje sus contenedores, luego use nano para abrir este archivo:

docker-compose down
nano config/prod.env

Establezca la dirección «de» para los correos electrónicos y ajuste su zona horaria. Ahora busque una línea que comience:

CSRF_TRUSTED_ORIGINS

Cambie esto para que contenga sus direcciones web, así como la dirección de bucle invertido de Pi, luego elimine el comentario de la siguiente línea:

X_FORWARDED_PROTO_HEADER_SET=True

Si no desea que personas aleatorias en Internet accedan a su instancia de wger ​​para realizar un seguimiento de sus entrenamientos, desplácese hacia abajo hasta la sección «Aplicación» y configure:

ALLOW_REGISTRATION=False
ALLOW_GUEST_USERS=False

Guarde y salga de nano con Ctrl + O , luego Ctrl + X .

Lo último que debe hacer es configurar certificados TLS y claves de cifrado para garantizar que los intrusos no puedan usar un ataque de intermediario (MITM) para interceptar su tráfico.

sudo certbot

Seleccione su nombre de dominio de la lista y Certbot buscará e implementará certificados TLS y claves de cifrado. Reinicie Apache una vez más para que los cambios surtan efecto:

sudo service apache2 restart

Cualquier conexión a su sitio de entrenamiento wger ​​se actualizará a HTTPS.

Use Wger en Raspberry Pi para administrar su estado físico

mujer en cuclillas con barra

Después de todo ese arduo trabajo con el teclado, ¡ya casi estás listo para ir al gimnasio! Inicie sesión en su cuenta con las credenciales que proporcionó anteriormente y verá un panel vacío con tres secciones: «Entrenamiento», «Plan de nutrición» y «Peso». Depende de usted ingresar los datos en cada uno de estos, usando los botones verdes en la parte inferior de cada columna.

tablero de instrumentos

Puede crear entradas manualmente o hacer clic en la barra de menú de cada categoría en la parte superior de cada página e importar un archivo CSV con sus datos.

El menú de Entrenamiento contiene todo lo relacionado con sus entrenamientos, incluidos horarios, calendario, galería y más. Haz clic en Entrenamientos y luego en Agregar entrenamiento . Asigne un nombre a su entrenamiento y luego marque las casillas de verificación para seleccionar los días que desea hacerlo. Una vez que haga clic en Guardar , podrá agregar ejercicios específicos a su rutina de ejercicios. A medida que escribe en el cuadro, verá que aparecen sugerencias que contienen este texto.

sugerencias de wger ​​para ejercicios de abdominales

Cuando haya seleccionado los ejercicios, puede usar un control deslizante para establecer el número de repeticiones y agregar detalles como los pesos involucrados. Guarda el entrenamiento y verás un resumen, con los grupos musculares a entrenar resaltados en rojo. Puede agregar notas a cualquier sesión de entrenamiento haciendo clic en la rueda dentada y seleccionando Nuevo registro de peso .

ejemplo de entrenamiento wger

En Nutrición , puede comprobar su IMC, crear planes de nutrición y calcular su consumo diario de calorías. No hace falta buscar ingredientes: eliges tus comidas diarias entre más de 78.000 productos y ves los valores nutricionales. Añade comidas al plan nutricional y mantén un resumen de tu dieta en el calendario.

Realice un seguimiento de sus entrenamientos sobre la marcha

No mucha gente lleva una computadora portátil al gimnasio y, aunque wger ​​se muestra bien en la mayoría de los navegadores, funciona mejor si usa la aplicación wger ​​dedicada para Android . La aplicación también está disponible en Google Play .

Después de instalar la aplicación en su dispositivo Android, ábrala de la forma habitual y elija Usar servidor personalizado . Ingrese su nombre de usuario y contraseña, luego ingrese la URL de su servidor.

La aplicación móvil wger ​​funciona igual que la aplicación web. Puede acceder a sus registros de entrenamiento, agregar entrenamientos e ingresar sus planes de comidas.

Instale Wger en su Raspberry Pi: Éxito

Wger es la solución perfecta si te preocupa la privacidad y quieres planificar entrenamientos y dietas serios sin que tus datos se vendan a terceros. Si esto no le preocupa, considere una de las muchas ofertas comerciales disponibles en las tiendas de aplicaciones móviles.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *