Teslamate : statistiques pour votre Tesla

Qu’est-ce que Teslamate ?

Teslamate est une application open-source puissante conçue pour les propriétaires de véhicules Tesla. Elle permet de collecter, stocker et analyser les données générées par votre voiture, en fournissant des insights détaillés sur vos trajets, votre consommation d’énergie, l’état de la batterie, et bien plus encore. Contrairement à l’application officielle Tesla, Teslamate vous offre un contrôle total sur vos données et les héberge sur votre propre serveur. C’est une solution idéale pour les passionnés de technologie souhaitant explorer leurs données de manière approfondie tout en garantissant leur confidentialité.

Dans cet article, nous allons vous montrer comment installer Teslamate facilement grâce à Docker, une plateforme qui simplifie l’installation et la gestion des applications.

Prérequis pour l’installation

Avant de commencer, voici ce dont vous aurez besoin :

  1. Un serveur ou une machine hôte (Linux, macOS ou Windows).
  2. Docker et Docker Compose installés sur votre système.
  3. Portainer installé et accessible via son interface web. Si ce n’est pas déjà fait, suivez mon article sur son installation, mais vous pouvez néanmoins adapter en utilisant uniquement le terminal.

Étape 1 : Accéder à l’interface de Portainer

  1. Connectez-vous à votre instance Portainer en accédant à son URL (par exemple, http://<adresse-ip>:9000).
  2. Naviguez vers la section Stacks dans le menu de Portainer.
  3. Cliquez sur + Add Stack pour créer une nouvelle stack.

Étape 2 : Configurer la Stack Teslamate

  1. Donnez un nom à la stack : Entrez teslamate comme nom de votre stack.
  2. Ajoutez le contenu YAML suivant dans le champ d’édition et penser à modifier les variables avec vos paramètres souhaités pour sécuriser l’installation :
services:
  teslamate:
    image: teslamate/teslamate:latest
    restart: always
    environment:
      - ENCRYPTION_KEY=secretkey #replace with a secure key to encrypt your Tesla API tokens
      - DATABASE_USER=teslamate
      - DATABASE_PASS=secret #insert your secure database password!
      - DATABASE_NAME=teslamate
      - DATABASE_HOST=database
      - MQTT_HOST=mosquitto
    ports:
      - 4000:4000
    volumes:
      - ./import:/opt/app/import
    cap_drop:
      - all

  database:
    image: postgres:17
    restart: always
    environment:
      - POSTGRES_USER=teslamate
      - POSTGRES_PASSWORD=password #insert your secure database password!
      - POSTGRES_DB=teslamate
    volumes:
      - teslamate-db-data:/var/lib/postgresql/data

  grafana:
    image: teslamate/grafana:latest
    restart: always
    environment:
      - DATABASE_USER=teslamate
      - DATABASE_PASS=password #insert your secure database password!
      - DATABASE_NAME=teslamate
      - DATABASE_HOST=database
      - GRAFANA_PASSWD=GRAFANA_PASSWD
      - GF_SECURITY_ADMIN_USER=GRAFANA_USER
      - GF_SECURITY_ADMIN_PASSWORD=GRAFANA_PW
      - GF_AUTH_ANONYMOUS_ENABLED=false
    ports:
      - 3000:3000
    volumes:
      - teslamate-grafana-data:/var/lib/grafana

  mosquitto:
    image: eclipse-mosquitto:2
    restart: always
    command: mosquitto -c /mosquitto-no-auth.conf
    # ports:
    #   - 1883:1883
    volumes:
      - mosquitto-conf:/mosquitto/config
      - mosquitto-data:/mosquitto/data

volumes:
  teslamate-db:
  teslamate-grafana-data:
  mosquitto-conf:
  mosquitto-data:

Étape 3 : Déployer la Stack

  1. Une fois le fichier YAML configuré, cliquez sur Deploy the Stack.
  2. Portainer téléchargera les images nécessaires et créera les conteneurs associés.

Étape 4 : Accéder à Teslamate & Grafana

  1. Une fois le déploiement terminé, accédez à l’interface Teslamate en ouvrant un navigateur et en entrant l’adresse suivante :
    http://<adresse-ip-de-votre-serveur>:4000.
  2. Connectez-vous à votre compte Tesla lorsque cela est demandé. Teslamate commencera alors à collecter vos données.
Capture-decran-du-2024-11-15-15-01-51 Teslamate : statistiques pour votre Tesla

Egalement accessible l’instance Grafana à cette url : http://<adresse-ip-de-votre-serveur>:3000.

Capture-decran-du-2024-11-15-15-05-10 Teslamate : statistiques pour votre Tesla

Étape 5 : (Optionnel) Ajouter un accès sécurisé avec un proxy inversé

Si vous souhaitez sécuriser l’accès à Teslamate avec HTTPS, vous pouvez ajouter un proxy inversé comme Nginx Proxy Manager à votre stack. Cela permettra d’obtenir un accès sécurisé via un certificat SSL. Retrouvez le tuto d’installation ici.

Share this content:

Laisser un commentaire