# Migration HAOS vers Home Assistant Docker

**URL:** <https://forum.hacf.fr/t/migration-haos-vers-home-assistant-docker/72216>\
**Category:** Autres\
**Created:** [Décembre 16, 2025, 7:32 UTC](https://forum.hacf.fr/t/migration-haos-vers-home-assistant-docker/72216 "2025-12-16T07:32:32Z")\
**Posts on this page:** 1\
**Showing post:** 16

<div class="post-metadata">

**Author:** ![Gandalf77bo](https://forum.hacf.fr/user_avatar/forum.hacf.fr/gandalf77bo/32/119391_2.png) [@Gandalf77bo](https://forum.hacf.fr/u/Gandalf77bo)\
**Post date:** [Décembre 22, 2025, 9:57 UTC](https://forum.hacf.fr/t/migration-haos-vers-home-assistant-docker/72216/16 "2025-12-22T09:57:01Z")

</div>

**Etape 14: Installation de Rclone**

Source:

> **[GitHub - coanghel/rclone-docker-automount: Simple Python script in a Docker container to...](https://github.com/coanghel/rclone-docker-automount)**
>
> Simple Python script in a Docker container to auto-mount rclone remote storage.

RClone est un utilitaire pour copier/synchroniser des répertoires avec des disques Cloud.  
On va utiliser la version serveur RC pour être accessible via commandes HTTP/API

Créez ce stack _Rclone_ :

```auto
services:
  rclone:
    image: rclone/rclone:latest
    container_name: rclone
    volumes:
      - /opt/docker/rclone:/config/rclone
      - /opt/docker/rclone/logs:/logs
      - /opt/docker/rclone/cache:/root/.cache/rclone # This is for the WebUI, not VFS
      - /home/user:/hostfs:rshared
      - /var/cache/rclone:/vfsCache
      - /etc/passwd:/etc/passwd:ro
      - /etc/group:/etc/group:ro
      - /etc/fuse.conf:/etc/fuse.conf:ro
      - /etc/letsencrypt:/etc/letsencrypt:ro
      - /opt/docker/ha/config:/opt/docker/ha/config # rend nos répertoire HA accessibles depuis Rclone RC
    devices:
      - /dev/fuse:/dev/fuse:rwm
    cap_add:
      - SYS_ADMIN
    security_opt:
      - apparmor:unconfined
    command:
      - rcd
      - --rc-web-gui
      - --rc-web-gui-no-open-browser
      - --rc-addr=:5572
      - --rc-user=rclone_user
      - --rc-pass=rclone_pw
      - --rc-cert=/etc/letsencrypt/live/toto.duckdns.org/fullchain.pem
      - --rc-key=/etc/letsencrypt/live/toto.duckdns.org/privkey.pem
      - --log-level=NOTICE
      - --cache-dir=/vfsCache
    network_mode: host
# networks:
# reseau_mqtt:
# ipv4_address: 172.20.0.4
    ports:
      - 5572:5572
    environment:
      - TZ=Europe/Paris
    restart: unless-stopped
  rclone_initializer:
    #image: ghcr.io/coanghel/rclone-docker-automount/rclone-init:latest
    image: ghcr.io/Gandalf77bo/rclone-docker-automount/rclone-init:latest
    container_name: rclone_initializer
    environment:
      - RCLONE_USERNAME=rclone_user
      - RCLONE_PASSWORD=rclone_pw
      - RCLONE_PORT=5572
      - RCLONE_CERT=/etc/letsencrypt/live/toto.duckdns.org/fullchain.pem
      - RCLONE_KEY=/etc/letsencrypt/live/toto.duckdns.org/privkey.pem
    volumes:
      - /opt/docker/rclone/initializer:/app/
      - /etc/letsencrypt:/etc/letsencrypt:ro
    restart: unless-stopped
    depends_on:
      - rclone
    networks:
      reseau_mqtt:
        ipv4_address: 172.20.0.14

networks:
  reseau_mqtt:
    external: true

```

Ce stack va déployer Rclone ainsi qu'un script qui permet de monter automatiquement le répertoire distant au démarrage.  
Je du faire un branch du projet GitHub Coanghel afin d'ajouter le support du HTTPS.  
Choisissez un couple identifiant /mdp pour Rclone qu'il faut renseigner à la fois à Rclone et au script.  
Corriger également l'endroit de montage du répertoire Gdrive : `/home/user:/hostfs:rshared`, moi je le monte dans mon home.

On va lancer Rclone en 2 fois. 1er fois pour configurer les access puis une 2nd fois avec les réglages normaux.

  

**Création des identifiants Google pour utilisation de Gdrive avec Rclone**

Allez dans [https://console.cloud.google.com](https://console.cloud.google.com)  
Allez dans `API et Services` et activer `Google Drive API`

 ![20251229_10h14m25s_grim](https://forum.hacf.fr/uploads/default/original/3X/c/5/c54eea496ff739ae95f56b1ee4c4576955885bc3.png)  
Puis dans `Identifiants` faire Créer des identifiants Oauth :  
 ![image](https://forum.hacf.fr/uploads/default/original/3X/0/5/051928d1c90dee8e3298ca1ced1f8562ddffd81b.jpeg)  
Type d'application : Application de Bureau  
Nom: Rclone ou autre  
Normalement vos codes s'affichent. Conservez les précieusement! Vous pouvez les téléchager au format JSON depuis l'écran Oauth/Client pendant qq mois seulement.  
 ![20251229_10h22m03s_grim](https://forum.hacf.fr/uploads/default/original/3X/e/4/e431e940070e3de524cd814b7b76e7fe1ac9a328.png)

Edit:  
L'ajout de son compte comme utilisateur de test permet de tester l'API pendant pour pouvoir semaine, apres quoi le token est à regénérer. Ce n'est pas pérenne donc je déconseil cette méthode.  
l'utiliser. Pour cela, allez dans `Audience` et ajoutez votre adresse email tout en bas :

 ![20251229_10h28m34s_grim](https://forum.hacf.fr/uploads/default/original/3X/8/6/867b5ed6472952a13f13e397364f1ed14de5203e.png)

Méthode pérenne :

> **[GDrive expiring after a week?](https://forum.rclone.org/t/gdrive-expiring-after-a-week/39017)**
>
> rclone version rclone v1.62.2 - os/version: raspbian 11.7 - os/kernel: 6.1.21-v7+ (armv7l) - os/type: linux - os/arch: arm (ARMv7 compatible) - go/version: go1.20.2 - go/linking: static - go/tags: none I have activated GDrive share with...

Dans `Acces aux Données` faites `Ajouter ou Supprimer des niveaux d'accés` et cochez ces 3 services :

- [https://www.googleapis.com/auth/docs](https://www.googleapis.com/auth/docs)
- [https://www.googleapis.com/auth/drive](https://www.googleapis.com/auth/drive)
- [https://www.googleapis.com/auth/drive.metadata.readonly](https://www.googleapis.com/auth/drive.metadata.readonly)

Puis dans `Audience` faites `Publier l'application`  
Etant donné que l'on a pas renseigner tout les champs pour publier l'application, elle va rester indéfiniement au status de `Vérification`.

 ![image](https://forum.hacf.fr/uploads/default/original/3X/7/d/7d084b54081761df7bb71b59ff3e9703138b671e.png)

Fermez l'onglet.  
Voila, normalement vos identifiants Google Auth sont OK.

  

**Installation et configuration de Rclone :**  
Donc pour configurer Rclone, il faut le lancer une 1ere fois avec dans le stack le `network_mode: host`. Désactiver les 3 autres lignes networks.  
Lancer le déploiement pout ouvrir un terminal et taper :

```auto
docker exec -it rclone rclone config

```

Cela va créer un fichier de configuration /opt/docker/rclone/rclone.conf  
Taper **n** pour créer un nouveau _remote_ et donnez lui un petit nom.  
Storage: pour moi Gdrive = **22**  
Client\_id: _l'identifiant Oauth généré par google du style `1820098191102-135xxxx.apps.googleusercontent.com`_  
Client\_secret: _le mot de passa associé genre `GOCSPX-rxxxxxdpPM`_  
Scope: 1  
Service\_account\_file: _rien_  
Edit Advance conf: **n**  
Use Web browser: **y**

 ![20251229_08h39m55s_grim](https://forum.hacf.fr/uploads/default/original/3X/0/3/03dd3b8c5042a40a3e80c0512c2d5c44204cda6d.png)  
Faites un copier/coller du lien afficher dans une fenetre de votre navigateur.  
Cela va ouvrir une fenetre de sélection de compte Google. Autorisez l'accés.  
Si votre compte Google Auth est à l'état publier/vérification, dans la fenetre d'autorisation des accés il faut forcer la main en cliquant en bas l'option `"Go to Rclone (unsafe)"`  
 ![image](https://forum.hacf.fr/uploads/default/original/3X/9/9/99e0730bd9ee873aec4235fbf14251d2098b1e0a.png)

Si tout se passe bien, le terminal affichera "toker captured" ou qq chose comme ça.  
Si qq tourne mal, faite Ctrl+c pour arreter et recommencez.

  

**Lancement de Rclone en mode normal**  
Modifier le stack pour ajouter un # devant la ligne `network_mode: host`  
et enlever les commentaire devant

```auto
    networks:
      reseau_mqtt:
        ipv4_address: 172.20.0.4

```

Re-déployer le stack.

  

**Utiliser rclone-docker-automount**  
Source:

> **[GitHub - Gandalf77bo/rclone-docker-automount: Simple Python script in a Docker container to...](https://github.com/Gandalf77bo/rclone-docker-automount)**
>
> Simple Python script in a Docker container to auto-mount rclone remote storage.

Pour l'utiliser il faut créer le répertoire ou le point de montage doit se faire.  
Ici ce sera `/home/user/Gdrive/mount`  
Puis créer un répertoire initializer dans Rclone.

```auto
cd /opt/docker/rclone
sudo mkdir initializer
cd initializer
sudo wget https://raw.githubusercontent.com/gandalf77bo/rclone-docker-automount/master/mounts.json # pour telecharger le fichier mounts.json
sudo wget https://raw.githubusercontent.com/gandalf77bo/rclone-docker-automount/master/rclone_initializer.py # pour télécharger le script qui pour une raison inconnue ne se télécharge pas tout seul!

```

Editez le fichier mounts.json pour peaufiner les réglages (`sudo nano mounts.json`)  
Le mien est ainsi :

```auto
[
 {
    "fs": "Gdrive:",
    "mountPoint": "/hostfs/Gdrive/mount",
    "mountOpt": {
	"AllowOther": true,
	"AllowNonEmpty": true
    },
    "vfsOpt": {
	"CacheMode": "full",
	"GID": 1000,
	"UID": 1000
    }
  }
]

```

nb: `/hostfs` est un volume docker defini dans le stack. Pour moi il pointe vers `/home/user`. Donc le point de montage final est `/home/user/Gdrive/mount`

J'ai déjà rencontré l'erreur _failed to mount FUSE fs: fusermount: exit status 1_  
Sur Internet ils recommandent de vérifier si fude3 est bien installé : `sudo apt install fuse3`  
Dans mon cas, le répertoire mount était verrouillé mais sans lien vers Gdrive, j'ai du le supprimer en faisant : `sudo umount /home/user/Gdrive/mount`

---

_[View the full topic](https://forum.hacf.fr/t/migration-haos-vers-home-assistant-docker/72216)._
