Aller au contenu
Se connecter

openGym

Conteneur LXC DevScripts v1.4.1

Script en développement. À essayer sur une machine de test seulement.
Script en développement : le projet demande de ne pas l'utiliser en production.

Accès par défaut

Adresse
http://ADRESSE-IP:80Remplacez ADRESSE-IP par l'adresse donnée à la fin de l'installation.
Compte et mot de passe
Aucun identifiant fixe publié par la source : voir ci-dessous.
Console et SSH
Console du conteneur dans l'interface Proxmox : compte root, connexion automatique sans mot de passe. Le SSH de root n'est ouvert que si vous l'avez demandé à l'installation.
Configuration
/opt/opengym_data/.env
  • openGym is served over plain HTTP at http://<IP>; with password sign-in switched on (PASSWORD_LOGIN=1): choose Create new profile and pick a name and a password. Passkeys, the app's default, cannot work on an IP address, because browsers only offer them on HTTPS under a hostname, so the sign-in screen offers passwords until you switch as described below.
  • Over plain HTTP the password and the session cookie cross the network unencrypted. Keep openGym on a network you trust, or put it behind HTTPS as described below.
  • Passkeys: put openGym behind a reverse proxy or tunnel that terminates HTTPS for a real hostname (Caddy, Nginx Proxy Manager, Traefik, Cloudflare Tunnel) and points at http://<IP>:80, set RP_ID=gym.example.com and ORIGIN=https://gym.example.com in /opt/opengym_data/.env, then run systemctl restart opengym. Profiles made with a password keep signing in and can add a passkey under Settings > Account > Passkeys. Settle on the hostname before people register passkeys: changing RP_ID later invalidates every passkey made under the old one.

openGym is a self-hosted gym and body-weight tracker. Plan weekly routines, log workouts with supersets and cardio, track body weight, measurements and personal records, and browse a library of more than 5,600 exercises with animations. Every profile keeps its own data and syncs across devices; the web app installs to the home screen, and an Android app can pair with your server. This script builds the web app from source and runs the Node.js API behind nginx.

Site ↗ Documentation ↗ Dépôt de l'application ↗ Voir le code du script ↗

Installer

Cœurs
2
Mémoire
2 Go
Disque
4 Go
Système
Debian 13
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/DevScripts/main/ct/opengym.sh)"

Configuration : /opt/opengym_data/.env

Dans le shell du nœud Proxmox. Exécutez cette commande dans le shell du nœud Proxmox, pas dans une VM. Lisez le script d'abord.

Générateur : préparer la commande avec vos réglages

Remplissez seulement ce que vous voulez changer. Les valeurs vides gardent le réglage par défaut du script.

Tutoriel pas à pas

De l'interface de Proxmox jusqu'à la première connexion, pour openGym.

  1. Ouvrez l'interface de Proxmox dans votre navigateur et connectez-vous.

  2. Dans l'arbre de gauche, cliquez sur votre nœud, puis sur « Shell ».

  3. Vérifiez que le nœud a la place pour ce conteneur : 2 cœurs, 2 Go de mémoire, 4 Go de disque.

  4. Copiez cette commande, collez-la dans le shell et appuyez sur Entrée.

    bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/DevScripts/main/ct/opengym.sh)"
  5. À la question « Use Default Settings? », répondez oui pour garder les réglages par défaut. Répondez non pour choisir vous-même l'identifiant, l'adresse, le disque ou le réseau.

  6. Attendez la fin de l'installation : le script affiche l'adresse du conteneur.

  7. Ouvrez http://ADRESSE-IP:80 dans votre navigateur, en remplaçant ADRESSE-IP par l'adresse affichée.

  8. Pour entrer dans le conteneur : sélectionnez-le dans Proxmox, puis « Console ». La session root s'ouvre sans mot de passe.

  9. Pour mettre à jour plus tard : tapez update dans la console du conteneur.

  10. Le fichier de configuration se trouve ici : /opt/opengym_data/.env

À savoir

  • The first profile created becomes the admin (FIRST_USER_ADMIN=1), so create yours right after the install. Anyone who can reach the address can create a profile; to close signup, set INVITE_ONLY=1 (and ALLOW_GUEST=0 to remove guest mode) in /opt/opengym_data/.env after your own profile exists, then run systemctl restart opengym.
  • ORIGIN in /opt/opengym_data/.env must be exactly the address in the browser bar (http://<IP>; as installed). If the container's IP changes or you open openGym under a hostname, set ORIGIN and RP_ID to that address and run systemctl restart opengym; until then sign-ins fail with "cross-origin request refused".
  • There is deliberately no self-signed certificate on the IP: an IP address can never be a passkey hostname, and browsers refuse service workers on untrusted certificates, so it would add a certificate warning and enable nothing. Push notifications, Keep screen awake and offline use also need a trusted HTTPS address.
  • The Android app pairs with the plain http://<IP>; address: sign in on the website, then use Settings > Account > Pair the mobile app.
  • Accounts, workouts, uploaded photos and videos and the key that signs every session live in /opt/opengym_data together with the .env; back up that folder. Updates replace /opt/opengym and leave it untouched.
  • Install and every update build the web app from source with Node.js 22, which peaks at about 0.9 GB of RAM. The running app needs about 150 MB.

Notes de la version v1.4.1

Bug fixes for v1.4.0, mostly the things you told us about on Discord and GitHub.

  • Smooth animations in the app. They lagged and stuttered on real phones (the phone's video
    player stalled at every loop). The app now shows them as animated images, the way the old GIFs
    worked, with the original timing. The web and self-hosted servers keep their clips.
  • The update check finds new versions again. It asked the GitLab mirror, which never got
    v1.4.0. It asks GitHub now, and the 300 MB …
Dans la même catégorie

AdventureLog

Conteneur LXC

Adventure Log is an app designed to track outdoor activities and personal achievements, allowing users to log their adventures with photos, notes, and location data. It …

Mise à jour Port 3000

AllStarLink

Machine virtuelle

AllStarLink is an amateur radio network that links repeaters and hotspots over the internet using Asterisk. This VM runs a full node.

Bambuddy

Conteneur LXC

Bambuddy is a web-based print management tool for Bambu Lab 3D printers, providing monitoring, control, and management of your print jobs.

Mise à jour Port 8000

Bar-Assistant

Conteneur LXC

Bar Assistant is all-in-one solution for managing your home bar. Compared to other recipe management software that usually tries to be more for general use, Bar Assistan…

Mise à jour Port 80

Crafty Controller

Conteneur LXC

Crafty Controller is a free and open-source Minecraft launcher and manager that allows users to start and administer Minecraft servers from a user-friendly interface. Th…

Mise à jour Port 8443 Accès par défaut

DiscoPanel

Conteneur LXC

The Minecraft Server Manager That *Actually* Works Built by someone who was done with bloated panels, endless menus, and tools that break the moment you need them most.…

Mise à jour Port 8080