Mon instance FitTrackee est UP à nouveau : https://fit.cyber-neurones.org/ Mon env.cfg :
export FLASK_SKIP_DOTENV=1
export HOST=0.0.0.0
export PORT=5000
export CLIENT_PORT=3000
export APP_SECRET_KEY=...
export APP_LOG=/home/XXXX/fittrackee/fittrackee.log
export UPLOAD_FOLDER=/home/XXXX/fittrackee/uploads
export DATABASE_URL=postgresql://fittrackee:XXXXXXX@localhost:5433/fittrackee
export UI_URL=https://fit.cyber-neurones.org/
export DEFAULT_STATICMAP=False
export STATICMAP_CACHE_DIR=/home/XXXX/fittrackee/staticmap_cache
#export TILE_SERVER_URL=https://tile.openstreetmap.org/{z}/{x}/{y}.png
#export TILE_SERVER_URL=https://a.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png
#export MAP_ATTRIBUTION='OpenStreetMap contributors'
export TILE_SERVER_URL=https://tile.thunderforest.com/outdoors/{z}/{x}/{y}.png?apikey=XXXXXXXXXX
export MAP_ATTRIBUTION='Thunderforest'
Il m’a fallu ajouter STATICMAP_CACHE_DIR pour fixé le problème.
Dans les logs j’ai testé 3 configurations du TILE_SERVER_URL mais à chaque fois j’avais la même erreur :
....
2025/07/06 17:19:11 - staticmap3.staticmap - ERROR - request failed [None]: https://c.tile.openstreetmap.fr/osmfr/11/1065/748.png
...
2025/07/06 17:42:18 - staticmap3.staticmap - ERROR - request failed [None]: https://tile.openstreetmap.org/17/67885/47864.png
...
2025/07/06 18:17:33 - staticmap3.staticmap - ERROR - request failed [None]: https://tile.thunderforest.com/outdoors/17/67885/47863.png?apikey=....
...
En fait l’erreur indiquer un problème d’enregistrement et pas un problème de téléchargement.
FitTrackee ( Passage en version v0.10.3 ) : https://fit.cyber-neurones.org/ Suite à la mise à jours, impossible de faire la synchronisation. J’ai pas encore compris … en plus je suis en dernière version, donc dans le message “Please update”.
ERROR Fittrackee instance isn't supported. Please update your Fittrackee instance main fittrackee
Wanderer ( Passage en version v0.17.0 ) : https://aventures.cyber-neurones.org/ Après la mise à jours
500 Internal Error
Par moment je sais pas pourquoi je fais des mises à jours.
Pour moi voici les manques :
Très bon logiciel à suivre :
J’avais un problème avec le soft : https://github.com/Dryusdan/garmin-to-fittrackee .
En fait c’était un problème de configuration sur apache2 (qui me permet de faire la gestion des certificats), j’ai donc fait :
# /usr/sbin/a2enmod headers
Enabling module headers.
To activate the new configuration, you need to run:
systemctl restart apache2
Ajout d’un paramètre dans mon fichier de conf
<VirtualHost>
<IfModule>
...
RequestHeader set X-Forwarded-Proto "https"
...
ErrorLog ${APACHE_LOG_DIR}/error.fit-ssl.log
CustomLog ${APACHE_LOG_DIR}/access.fit-ssl.log combined
...
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/fit.cyber-neurones.org/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/fit.cyber-neurones.org/privkey.pem
</VirtualHost>
</IfModule>
Pour finir :
J’ai longtemps hésité entre FitTrackee ( https://github.com/SamR1/FitTrackee ) et workout-tracker ( https://github.com/jovandeginste/workout-tracker )
Et je voulais la synchronisation automatique ( Garmin ou Strava ), donc j’ai pris FitTrackee :
J’ai donc monté une VM sur mon proxmox, pas trop de problème pour faire l’installation. Sauf qu’il était impossible de faire fonctionner la synchronisation :
Traceback (most recent call last):
File "fittrackee_venv/lib/python3.11/site-packages/flask/app.py", line 1511, in wsgi_app
response = self.full_dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "fittrackee_venv/lib/python3.11/site-packages/flask/app.py", line 919, in full_dispatch_request
rv = self.handle_user_exception(e)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "fittrackee_venv/lib/python3.11/site-packages/flask/app.py", line 917, in full_dispatch_request
rv = self.dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^
File "/fittrackee_venv/lib/python3.11/site-packages/flask/app.py", line 902, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "fittrackee_venv/lib/python3.11/site-packages/fittrackee/oauth2/resource_protector.py", line 103, in decorated
return f(auth_user, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "fittrackee_venv/lib/python3.11/site-packages/fittrackee/oauth2/routes.py", line 570, in authorize
response = authorization_server.create_authorization_response(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "fittrackee_venv/lib/python3.11/site-packages/authlib/oauth2/rfc6749/authorization_server.py", line 288, in create_authorization_response
request = self.create_oauth2_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "fittrackee_venv/lib/python3.11/site-packages/authlib/integrations/flask_oauth2/authorization_server.py", line 75, in create_oauth2_request
return FlaskOAuth2Request(flask_req)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "fittrackee_venv/lib/python3.11/site-packages/authlib/integrations/flask_oauth2/requests.py",
line 12, in __init__
super().__init__(request.method, request.url, None, request.headers)
File "fittrackee_venv/lib/python3.11/site-packages/authlib/oauth2/rfc6749/requests.py", line 12, in __init__
InsecureTransportError.check(uri)
File "fittrackee_venv/lib/python3.11/site-packages/authlib/oauth2/rfc6749/errors.py", line 65, in check
raise cls()
authlib.oauth2.rfc6749.errors.InsecureTransportError: insecure_transport: OAuth 2 MUST utilize https.
J’ai pourtant bien mon url en HTTPS. Ensuite j’ai voulu mettre dans env.cfg