Installation de Mastodon

Après avoir joué un peu avec le Mastodon et docker, j’ai eu envie de le déployer correctement. Je reprends l’article d’Agristan : https://angristan.fr/installer-instance-mastodon-debian-8/

Installation de Node.js

J’ai déjà ma propre installation, j’installe Yarn.

Installation de Redis

Installation de PostgreSQL

On crée un utilisateur et une base de données :

Création de l’utilisateur Mastodon

On va mettre en place l’environnement de Mastodon avec cet utilisateur.

Pour se loger :

Installation de Ruby
Installation des dépendances (en root) :

Installation de rbenv

On se connecte avec l’utilisateur mastodon

On se reconnecte pour prendre en compte le nouvel environnement

Installation de ruby-build

Installation de Ruby

Cela peut prendre quelques minutes ou quelques dizaines de minutes suivant la puissance de votre serveur.

Installation de Mastodon

Ensuite, on va utiliser la dernière version stable plutôt que le dépôt de développement continuellement mis à jour.

Note : $(git tag | tail -n 1) est une commande qui récupère automatiquement le dernier tag, c’est à dire le numéro de la dernière version.

Ensuite on installe le reste :

Configuration

Pour la configuration voir plus bas.

Mise en place de la base de données

Pré-compilation des fichiers CSS et JS

Mise en place des scripts Systemd

Pour fonctionner, Mastodon a besoin de 3 services. Pour pouvoir les gérer facilement, on va utiliser des scripts systemd.

À faire en root.

Processus web

Collez :

Processus en arrière-plan

Collez :

Processus pour l’API

Collez :

On active les services :

Et on démarre le bazar :

Si vous modifiez la configuration :

Pour vérifier que tout est en route :

Mise à jour de Mastodon

Il y a souvent des mises à jour de Mastodon, surtout en ce moment. Pour mettre à jour votre instance, c’est très simple.

Sauvegarder les fichiers et la base de données avant de mettre à jour.

Déjà, une petite mise à jour des paquets ne fait pas de mal :

On arrête tout :

On récupère les sources, et on met à jour Mastodon, les dépendances Ruby et npm, on régénère les assets et on met à jour la BDD.

Note : $(git tag | tail -n 1) est une commande qui récupère automatiquement le dernier tag, c’est à dire le numéro de la dernière version.

Aussi, toutes ces commandes ne sont pas forcément nécessaires à chaque fois, mais les exécuter ne vous fera pas de mal 😉 . Je vous recommande de lire les notes de versions avant de mettre à jour.

Et on redémarre tout :

Mise en place des crons

On édite le crontab :

Et on y ajoute :

Installation du reverse proxy Nginx

On installe Nginx stable depuis les dépôts officiels :

On ajoute la configuration :

Et on y met (à adapter, ici c’est pour mstdn.io) :

Avec une belle configuration HTTPS inclue. 🙂

Pour que tout ça soit fonctionnel on va générer les certificats correspondants au domaine.

 

 

Projet : création d’une station météo à base de Raspberry Pi

J’ai décidé de me fabriquer une station météo à base de Rasberry Pi. Une série d’article détaillera suivant mon humeur, les étapes de cette station météo. Le projet est pour le moment à l’état d’ébauche. Cet article a pour but de servir de cahier des charges et de lister le matériel.

[toc]

Cahier des Charges
Informations disponibles

La station météo devra fournir les informations suivantes :

  • Température,
  • Humidité de la pièce,
  • Pression,
  • Qualité de l’air.

Dans un second temps, les informations complémentaires pourront être disponibles :

  • Température extérieure,
  • Pression extérieure,
  • Humidité extérieure,
  • Prise de vue du Jardin.

En somme, un capteur déporté devra pouvoir être installé. Ce capteur fonctionnera à l’énergie solaire. Le protocole de communication avec la station est encore à définir.

Fonctionnalités
  • Les informations devront être disponibles à distance (Web, API et frontend).
  • Les informations seront affichées sur un écran embarqué tactile.
  • Les informations seront enregistrées dans une base de données.
  • Les informations seront conservées pour une durée de 3 mois.
  • Une synthèse journalière sera générée pour archive. Il sera possible d’afficher cette synthèse pour chaque journée et d’afficher des courbes de comparaison.
  • Il devra être possible d’éteindre l’écran pour limité la consommation d’énergie.
Matériel
  • Rasberry Pi 2 model B, chez LDLC (45€)
  • Carte Mémoire Sandisk 16Go, chez LDLC (9€)
Capteurs
  • Humidité/Température : DHT22, chez Adafruit (10$)
  • Pression/Température : BMP085, chez Adafruit (20$)
  • Pression/Température: BMP180, chez Adafruit (10$)
Périphériques
  • Écran 7″ tactile, chez Adafruit (80$), chez Swag (58£), RS (60 €)
  • Boitier Pour l’écran, chez Adafruit (15$), KUBII (12.50 €)
  • Alimentation USB 2A, chez Swag (5£), RS (5 €)
  • Module Wifi USB, chez Adafruit (20$)
Composants Divers
  • 1x Résistance 10KOhms, chez Adafruit (0.75$ les 25)
  • 1x Fiche 40 pins, Adafruit (0.75$)
Matériel de mise au point
  • Carte d’essais, chez Adafruit (6$)
  • Cobbler 40 pins, chez Adafruit (6.50$)
Étapes de fabrication
  1. Élaboration du cahier des charge et conception
  2. Commande du matériel chez les différents fournisseurs
  3. Prototypage sur une carte d’essais du modèle simple (sans module déporté)
  4. Réalisation d’un circuit imprimé et commande chez un professionnel.
  5. Mise en place du premier modèle
Ressources

 

Mises à jour
  • 27/01/2016 : Commande Adafruit
  • 03/02/2016 : Commande RS