Planejar seu regime de condicionamento físico é difícil e acompanhá-lo é mais difícil. Wger é um aplicativo da web auto-hospedado para ajudá-lo a rastrear seus alvos, maximizar sua massa, comparar seus bíceps e planejar sua dieta. É simples de configurar e vem com aplicativos móveis para sincronizar seu progresso em vários dispositivos.
Por que auto-hospedar um aplicativo da Web de rastreamento de treino no Raspberry Pi?
Se você leva a sério ganhar músculos, perder peso ou melhorar o desempenho e a estética do seu corpo, é importante fazer um plano, manter um plano e manter registros.
Você precisa saber o que entra em seu corpo e as calorias vitais que ele consome como combustível; você precisa ter certeza de que seus treinos são equilibrados e eficazes. Tão importante quanto isso, você precisa medir os efeitos que seus treinos e dietas estão tendo. Suas coxas são mais grossas? Seus glúteos mais apertados? Seu peso está se movendo na direção que você deseja?
Existem dezenas de aplicativos que o ajudarão a rastrear e registrar esses fatores. A maioria, no entanto, contém anúncios e é baseada em uma opção de pagamento por assinatura ou usa o modelo freemium, com certos recursos não funcionais, a menos que você pague uma taxa única. Quase todos eles coletam seus dados, para que você possa ser rastreado por empresas de publicidade enquanto monitora sua massa muscular.
Outra alternativa é manter meticuloso registros de sua dieta e exercícios em uma planilha do Excel.
O Wger é um gerenciador de exercícios completo que você pode hospedar no seu Raspberry Pi. É gratuito e de código aberto, o que significa que você pode modificá-lo ou distribuí-lo da maneira que desejar. Não há recursos bloqueados por paywalls e, como está sendo executado no hardware que você possui, você pode ter certeza de que ninguém está rastreando você também.
Como instalar o Wger Workout Manager no seu Raspberry Pi
Wger é um aplicativo bastante robusto, então sugerimos que você use um Raspberry Pi 4B se houver um disponível para você.
Siga nosso guia para configurar seu Raspberry Pi como um servidor web, então conecte-se ao Pi usando o Secure Shell (SSH).
Atualize e atualize todos os pacotes e, em seguida, clone o repositório wger GitHub para um novo diretório:
git clone https://github.com/wger-project/docker.git wger
Mude para o novo diretório e use o editor de texto nano para abrir o arquivo Docker Compose:
cd wger
nanodocker-compose.yml
No momento da redação, o arquivo Docker Compose não possui uma diretiva de versão na parte superior do arquivo. Isso significa que, se você tentar abrir o Docker Compose, não funcionará e verá os seguintes erros:
Opção de configuração não suportada para redes: 'default'
Opção de configuração não suportada para serviços: 'nginx'
Opção de configuração não suportada para volumes: 'postgres-data'
Você precisará especificar uma versão do Docker Compose. É essencial usar uma versão anterior à versão 3, pois certo suporte de sintaxe usado no arquivo wger Docker Compose foi removido em versão 3 da especificação Docker Compose, mas reintroduzida na versão 3.9, que atualmente não está disponível para Raspberry Pi OS. Se você especificar a versão 3.7, por exemplo, verá esta ou outras mensagens de erro semelhantes:
services.web.depends_on contém um tipo inválido, deve ser uma matriz
Descobrimos que a versão mais confiável do Docker Compose para fazer o wger funcionar era a 2.2. Insira a seguinte linha no início do seu arquivo Docker Compose:
versão: '2.2'
O Nginx está incluído no arquivo wger Docker Compose e o wger requer que ele funcione. Por padrão, o Nginx escuta na porta 80. No entanto, se você estiver usando seu Pi para hospedar outros sites e serviços e seguir nosso guia para configurá-lo como um servidor, você já terá o Apache escutando na porta 80. Role para baixo até o nginx seção e localize a linha abaixo portas: que lê 80:80. Altere isso para:
81:80
Salve e saia do nano com Ctrl + O então Ctrl + X. Abra o Docker Compose no modo desanexado:
docker-compose up -d
…e aguarde enquanto o Docker Compose baixa as imagens e configura os contêineres necessários. Quando o processo estiver concluído, execute:
docker-compose ps
…para ver o status dos contêineres. Cada um deve ter o status "Up (saudável)".
Agora você pode visitar sua instância wger em seu-pi-endereço-ip-local: 81. Você verá uma imagem de fundo inspiradora de um conjunto de braços fortemente musculosos liberando uma barra em uma névoa de gotas de suor e pó de giz, mas não poderá se registrar ou fazer login.
Para usar um nome de domínio para acessar o wger, visite a página DNS do seu registrador e crie um novo registro "A". Defina o host como "@" e o valor como seu endereço IP público.
De volta ao terminal, navegue até Apache's sites disponíveis diretório e use o nano para criar um novo arquivo de configuração:
cd /etc/apache2/sites-available
sudonanowger.conf
No novo arquivo, cole:
<VirtualHost *:80>
Nome do servidorseu domínio.tld
ProxyPass / http://127.0.0.1:81/
ProxyPassReverse / http:/127.0.0.1:81/
ProxyPreserveHost ativado
VirtualHost>
Salve e saia do nano com Ctrl + O, então Ctrl + X. Ative a configuração e reinicie o Apache:
sudoa2ensitewger.conf
serviço sudo apache2 reiniciar
Agora você pode visitar sua instância wger com seu nome de domínio em qualquer navegador. Acerte o Registro botão na parte superior da página e digite seu nome, endereço de e-mail e senha. Não faça mais nada, ou você receberá uma mensagem de erro que diz:
A verificação CSRF falhou. Solicitação abortada
Isso ocorre porque o wger usa o Django como um banco de dados e requer que as fontes confiáveis sejam definidas em um arquivo de ambiente separado.
Desative seus contêineres e use o nano para abrir este arquivo:
docker-compose down
nano config/prod.env
Defina o endereço "de" para e-mails e ajuste seu fuso horário. Agora procure uma linha que começa:
CSRF_TRUSTED_ORIGINS
Altere isso para que contenha seus endereços da Web, bem como o endereço de loopback do Pi e, em seguida, descomente a seguinte linha:
X_FORWARDED_PROTO_HEADER_SET=Verdadeiro
Se você não deseja que pessoas aleatórias na Internet acessem sua instância wger para rastrear seus treinos, role para baixo até a seção "Aplicativo" e defina:
ALLOW_REGISTRATION=Falso
ALLOW_GUEST_USERS=Falso
Salve e saia do nano com Ctrl + O, então Ctrl + X.
A última coisa a fazer é configurar certificados TLS e chaves de criptografia para garantir que bisbilhoteiros não possam usar um ataque man-in-the-middle (MITM) para interceptar seu tráfego.
sudo certbot
Selecione seu nome de domínio na lista e o Certbot buscará e implantará certificados TLS e chaves de criptografia. Reinicie o Apache mais uma vez para que as alterações entrem em vigor:
serviço sudo apache2 reiniciar
Qualquer conexão com seu site de treino wger será atualizada para HTTPS.
Use o Wger no Raspberry Pi para gerenciar seu condicionamento físico
Depois de tanto trabalho com o teclado, você está quase pronto para ir para a academia! Faça login em sua conta usando as credenciais fornecidas anteriormente e você verá um painel vazio com três seções: "Treino", "Plano de nutrição" e "Peso". Cabe a você inserir os dados em cada um deles, usando os botões verdes na parte inferior de cada coluna.
Você pode criar entradas manualmente ou clicar na barra de menu de cada categoria na parte superior de cada página e importar um arquivo CSV com seus dados.
O menu para Treinamento contém tudo a ver com seus treinos, incluindo horários, calendário, galeria e muito mais. Clique em treinos, então Adicionar treino. Dê um nome ao seu treino e marque as caixas de seleção para selecionar os dias em que deseja fazê-lo. Depois de clicar Salvar, você poderá adicionar exercícios específicos à sua rotina de exercícios. Conforme você digita na caixa, você verá sugestões que contêm este texto.
Depois de selecionar os exercícios, você pode usar um controle deslizante para definir o número de repetições e adicionar detalhes como os pesos envolvidos. Salve o treino e você verá um resumo, com os grupos musculares a serem treinados destacados em vermelho. Você pode adicionar notas a qualquer sessão de treino clicando na engrenagem e selecionando Novo registro de peso.
Sob Nutrição, você pode verificar seu IMC, criar planos nutricionais e calcular sua ingestão calórica diária. Não há necessidade de procurar ingredientes: você escolhe suas refeições diárias entre mais de 78.000 produtos e vê os valores nutricionais. Adicione refeições ao plano nutricional e mantenha uma visão geral de sua dieta no calendário.
Acompanhe seus treinos em qualquer lugar
Poucas pessoas levam um laptop para a academia e, embora o wger seja bem exibido na maioria dos navegadores, funciona melhor se você usar o dedicado aplicativo wger para Android. O aplicativo também está disponível em Google Play.
Depois de instalar o aplicativo em seu dispositivo Android, abra-o normalmente e escolha Usar servidor personalizado. Insira seu nome de usuário e senha e, em seguida, insira a URL do seu servidor.
O aplicativo móvel wger funciona da mesma forma que o aplicativo da web. Você pode acessar seus registros de treinamento, adicionar exercícios e inserir seus planos de refeições.
Instale o Wger no seu Raspberry Pi: sucesso
O Wger é a solução perfeita se você se preocupa com a privacidade e deseja planejar exercícios e dietas sérias sem que seus dados sejam vendidos a terceiros. Se isso não for do seu interesse, considere uma das muitas ofertas comerciais disponíveis nas lojas de aplicativos móveis.