Installation

Gladys est un petit serveur écrit en Node.js, ainsi elle est peut tourner aussi bien sur Linux, Mac ou Windows. Néanmoins, afin de pouvoir garder votre Gladys allumée H24 sans trop consommer, et pour avoir les meilleurs interactions domotiques possible, je vous conseille d’installer Gladys sur un Raspberry Pi.

Le Raspberry Pi est un micro-ordinateur qui a de nombreux avantages :

  • Abordable (35€)
  • Consommation électrique très faible (3€ d’électricité par an)
  • Silencieux (Pas de ventilateur)
  • Puissant (1.2GHz 64-bit quad-core ARMv8 CPU, 1Go RAM)
  • Tout équipé niveau connectivités (Wi-Fi, Bluetooth 4.1 LE, Ethernet, 40 GPIO pins, 4 ports USB, Full HDMI port)

Si vous n’avez pas de Raspberry Pi, le mieux est de commencer avec un kit de démarrage contenant tout le matériel.


Installation clé en main

Parce qu’une vidéo est toujours plus explicite, n’hésitez pas à regarder le tutoriel vidéo!

Pour installer Gladys sur un Raspberry Pi, vous pouvez cloner l’image Raspbian pré-conçue pour Raspberry Pi directement sur votre carte SD !

La première étape, c’est de télécharger l’image Raspbian.

Vous pouvez télécharger l’image Raspbian sur GitHub => Télécharger l’image Raspbian Gladys sur GitHub

Si le téléchargement est lent sur GitHub ou ne fonctionne pas, vous pouvez télécharger l’image sur le miroir officiel Gladys => Télécharger l’image Raspbian Gladys sur le miroir officiel

L’image Raspbian est compressée dans un fichier zip, que vous devez dézipper afin d’arriver à un fichier “.img”.

L’étape d’après est de cloner l’image Raspbian Gladys sur la carte SD (c’est très simple), de la même manière que l’on clone l’image Raspbian “originale” sur un Raspberry Pi.

Je vous conseille pour cela le super tool Etcher (compatible Linux/MacOS/Windows).

Installez Etcher, branchez votre carte SD à votre ordinateur, et clonez le fichier .img sur la carte.

Etcher Gladys carte SD Raspberry Pi

Ensuite, vous pouvez brancher votre Raspberry Pi en Ethernet à votre box, et le brancher sur le secteur. Une petite étape supplémentaire est nécessaire, il faut maintenant étendre la partition sur le Raspberry Pi pour que l’image prenne la taille de votre carte SD. Si vous n’étendez pas la partition, votre image ne prendra pas parti de toute la taille disponible sur votre carte SD, et vous allez vite manquer d’espace disque !

Pour cela, deux options : se connecter sur le Raspberry Pi directement ( avec un clavier et un écran branché en HDMI ), ou en SSH. Je vous conseille le SSH, beaucoup plus simple à mettre en place. Pour se connecter en SSH, il y a plein de tutoriels disponibles, pour Windows et Mac/Linux.

Le compte sur le Raspberry Pi est celui par défaut (user : pi, mot de passe : raspberry).

Une fois connecté en ligne de commande sur le Raspberry Pi, il faut juste taper la commande:

sudo raspi-config

Et sélectionner l’option “1. Expand Filesystem”. Le système va vous proposer de rebooter, il faut le faire afin de prendre en compte la modification.

Et c’est tout ! Gladys est prête, et tourne déjà :)

Accéder à Gladys

Pour accéder à Gladys, c’est très simple. Rendez-vous sur votre navigateur internet sur n’importe quelle machine présente sur le réseau local où tourne le Raspberry Pi (que la machine soit en Wi-Fi, Ethernet, il suffit juste qu’elle soit connectée à la même box que le Raspberry Pi)

Puis tapez l’URL :

http://gladys.local

Vous devriez arriver sur l’interface de Gladys. Vous pouvez désormais configurer votre compte :)

Note : Si cela ne marche pas, pas de panique. Vous pouvez taper directement l’IP de votre Raspberry Pi dans la barre de votre navigateur. Pour trouver l’IP du Raspberry Pi, vous pouvez soit taper ifconfig en ligne de commande sur le Rpi, ou alors utiliser des outils de scan réseaux pour trouver son IP (Network Scanner sur Android par exemple, ou iNet sur iOS)

Note 2: Si vous avez un quelconque problème lors de l’installation, n’hésitez pas à venir en parler sur le forum Gladys, en général quelqu’un vous répondra assez rapidement !


Installation Manuelle

En cours..


Installation Docker

Architectures supportées

amd64, arm32v6, arm64v8, i386, ppc64le, s390x

Tags disponible

  • latest
  • v3 (Version majeure)
  • v3.x.x (Version spécifique)

Création du conteneur Maria DB

docker run --name gladys-mariadb \
--restart=always \
-e MYSQL_ROOT_PASSWORD=mysecretpassword \
-e MYSQL_DATABASE=gladys \
-d mariadb:latest \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_general_ci

Explications:

  • --restart=always => nous voulons que si le container/la machine crash, il redémarre automatiquement
  • -v /var/lib/mysql:/var/lib/mysql => Ici, nous montons un volume au container afin que les fichiers enregistrés par MariaDB soit enregistrés sur la machine “parente”. Car lorsqu’un container est mis à jour/relancé, tout son contenu est supprimé, il ne faut rien enregistrer dans un container Docker ! Du coup ici les données MariaDB seront préservées même en cas de suppression du container.
  • -e MYSQL_ROOT_PASSWORD=mysecretpassword et -e MYSQL_DATABASE=gladys => on spécifie ici les variables d’environnements qui seront lues par MariaDB pour définir le mot de passe root et le nom de la base de donnée.
  • -d => L’option ‘-d’ signifie ‘detached’, c’est à dire que le container va tourner en arrière-plan.

Initialisation de la base de données

docker run --rm \
-e NODE_ENV=development \
-e MYSQL_HOST=mariadb \
-e MYSQL_PASSWORD=mysecretpassword \
-e MYSQL_PORT=3306 \
-e TZ=Europe/Paris \
--link gladys-mariadb:mariadb \
gladysproject/gladys:v3 \
node init.js

Explications:

Ce conteneur ne sert qu’à initialiser la base de données, le script init.js de Gladys s’occupe de créer le schéma.

Création du conteneur Gladys

docker run --name gladys-node \
--restart=always \
-p 80:8080 \
-e NODE_ENV=production \
-e MYSQL_HOST=mariadb \
-e MYSQL_PASSWORD=mysecretpassword \
-e MYSQL_PORT=3306 \
-e TZ=Europe/Paris \
--link gladys-mariadb:mariadb \
-d gladysproject/gladys:v3

Explications:

  • -p 80:8080 => On map le port 80 de l’hôte au port 8080 du container, pour pouvoir accéder à Gladys depuis notre navigateur sur le port 80.
  • -e TZ=Europe/Paris => On définit le fuseau horaire qu’utilisera le conteneur. Vous pouvez consulter cette liste sur wikipédia si vous ne savez quelle valeur renseigner.

Accéder à Gladys

Rendez-vous sur votre navigateur internet sur n’importe quelle machine présente sur le réseau local. Puis accèdez à l’URL :

http://IP_HOTE_DOCKER

Vous devriez arriver sur l’interface de Gladys. Vous pouvez désormais configurer votre compte !