Comment héberger l’application Buzz de Block sur un serveur

Comment héberger l’application Buzz de Block sur un serveur

Pour installer l’application de communication Buzz de Block, vous devez d’abord effectuer les préparatifs nécessaires, télécharger et installer Buzz, configurer votre nom de domaine et vos secrets, sécuriser l’accès avec HTTPS, puis vous inscrire en tant que premier membre.

Vous pouvez installer Buzz sur votre ordinateur et rejoindre une communauté existante en tant que simple membre. En revanche, si vous l’auto-hébergez sur un serveur privé virtuel (VPS), vous gardez le contrôle total de vos conversations, de vos identités et de vos fichiers, car ils sont stockés sur une infrastructure que vous gérez vous-même.

Suivez ces étapes pour auto-héberger Buzz et configurer votre serveur :

  1. Connectez-vous à votre serveur et installez Docker.
  2. Téléchargez les fichiers de Buzz.
  3. Générez les secrets et configurez le fichier .env.
  4. Démarrez les services de Buzz avec Docker Compose.
  5. Activez HTTPS avec Caddy.
  6. Inscrivez-vous en tant que premier membre et connectez-vous.
  7. Configurez les sauvegardes automatiques.

Certains hébergeurs VPS, dont Hostinger, proposent un template d’application Buzz qui permet de déployer Buzz sur votre serveur en quelques clics. Cette méthode est plus simple et plus rapide que l’exécution manuelle de toutes les commandes.

Les prérequis pour installer Buzz

Avant d’installer Buzz, une application open source de messagerie d’équipe, préparez un VPS Linux répondant aux caractéristiques recommandées, un nom de domaine pointant vers votre serveur et une clé d’identité Buzz disponible aux deux formats npub et hex.

  • VPS Linux. Votre VPS Linux doit disposer d’au moins deux cœurs de processeur et de 4 Go de RAM pour faire fonctionner Buzz de manière fiable. Les versions Ubuntu à support à long terme (LTS) bénéficient de mises à jour de sécurité pendant cinq ans. Les instructions officielles d’installation de Docker étant conçues pour Ubuntu, ce système constitue le choix le plus simple pour ce déploiement. Avant de continuer, préparez votre serveur pour héberger une application comme Buzz.
  • Nom de domaine. Vous avez besoin d’un nom de domaine pour accéder au relais Buzz de manière sécurisée depuis Internet. Vérifiez que votre nom de domaine pointe vers l’adresse IP de votre VPS. Si votre hébergeur VPS propose un sous-domaine gratuit, vous pouvez l’utiliser à la place, car il pointe généralement déjà vers votre serveur.
  • Clé publique Buzz. Pour vous inscrire en tant que propriétaire du relais, vous devez disposer d’une clé d’identité Buzz qui sert à vous identifier dans l’espace de travail. Au lieu d’un nom d’utilisateur et d’un mot de passe, Buzz utilise une paire de clés générée par l’application.

Vous aurez besoin de votre clé publique sous deux formats :

  • Format hexadécimal pour le fichier de configuration du serveur.
  • Format npub pour l’inscription des membres.

Suivez ces étapes pour générer votre clé d’identité Buzz :

  1. Accédez au site officiel de Buzz et téléchargez l’application de bureau correspondant à votre système d’exploitation.
  2. Installez et ouvrez l’application, puis sélectionnez Créer une nouvelle clé d’identité sur l’écran d’accueil.
  3. Sur l’écran de connexion à une communauté, sélectionnez Copier votre identifiant public. Il s’agit de votre clé npub, qui commence par npub1, suivi d’une longue chaîne de caractères. Enregistrez-la dans un fichier texte.
  4. Ouvrez la page NostrTool pour convertir votre clé npub.
  5. Sélectionnez Load a pubkey from npub/hex, collez votre clé npub dans le champ Paste pubkey hex or npub, puis cliquez sur Load.
  6. Copiez la valeur affichée dans le champ Nostr public key (hex), en bas de la page, et enregistrez-la dans le même fichier texte.
Convertisseur de clés NostrTool affichant une clé npub et sa clé publique correspondante au format hexadécimal

Auto-hébergez Buzz avec Docker Compose

Vous pouvez auto-héberger Buzz avec Docker Compose, qui permet de démarrer les quatre services nécessaires à son fonctionnement (le relais, PostgreSQL, Redis et MinIO) à l’aide d’une seule commande. Vous n’avez donc pas à installer ni à configurer chaque service séparément.

Le relais Buzz gère les messages et coordonne les différents services. PostgreSQL stocke les messages et les données de recherche, Redis prend en charge les fonctionnalités en temps réel, tandis que MinIO stocke les fichiers et les images partagés.

1. Connectez-vous au serveur et installez Docker

Ouvrez un terminal sur votre ordinateur et connectez-vous au serveur via SSH. Remplacez your-server-ip par l’adresse IP fournie par votre hébergeur VPS :

ssh root@your-server-ip

Mettez à jour les logiciels de votre serveur :

sudo apt update && sudo apt upgrade -y

La commande apt update vérifie si des mises à jour de paquets sont disponibles, tandis que apt upgrade les installe. Ces deux commandes font partie des commandes les plus courantes pour administrer un serveur Linux.

Ensuite, installez Docker sur votre serveur. Une fois l’installation terminée, installez le plugin Docker Compose :

sudo apt install -y docker-compose-plugin

Vérifiez que Docker et Docker Compose sont correctement installés. Chaque commande doit afficher un numéro de version :

docker --version
docker compose version

2. Téléchargez les fichiers de déploiement de Buzz

Les fichiers nécessaires au déploiement de Buzz en production sont disponibles sur GitHub. Clonez le dépôt à l’aide de la commande Git, puis accédez au dossier de déploiement :

git clone https://github.com/block/buzz.git
cd buzz/deploy/compose

Vous vous trouvez maintenant dans le dossier buzz/deploy/compose, qui contient les fichiers nécessaires pour faire fonctionner Buzz sur un serveur de production.

Pour afficher tous les fichiers du dossier, exécutez la commande suivante :

ls -a

3. Générez les secrets et configurez l’environnement

Buzz utilise un fichier d’environnement (.env) pour stocker votre nom de domaine, la clé du propriétaire du relais et les mots de passe de chaque service. Vous devez renseigner ces valeurs avant de démarrer le relais.

Commencez par générer sept secrets aléatoires en exécutant sept fois la commande suivante. Enregistrez chaque valeur obtenue dans un fichier texte en indiquant le champ auquel elle correspond, car vous devrez ensuite l’ajouter à la configuration :

openssl rand -hex 32

Copiez le template du fichier d’environnement, puis ouvrez le nouveau fichier avec l’éditeur de texte nano :

cp .env.example .env
nano .env

Dans le fichier .env, vous devez modifier trois groupes de valeurs : le nom de domaine, la clé publique du propriétaire et les secrets.

  • Nom de domaine. Modifiez les cinq lignes suivantes en remplaçant le nom de domaine utilisé comme exemple par votre propre nom de domaine :
BUZZ_DOMAIN=buzz.example.com
RELAY_URL=wss://buzz.example.com
BUZZ_MEDIA_BASE_URL=https://buzz.example.com/media
BUZZ_MEDIA_SERVER_DOMAIN=buzz.example.com
BUZZ_CORS_ORIGINS=https://buzz.example.com
  • Clé publique du propriétaire. Repérez la ligne suivante et remplacez la valeur provisoire par la clé de 64 caractères au format hexadécimal que vous avez générée précédemment :
RELAY_OWNER_PUBKEY=CHANGE_ME_OWNER_PUBKEY_HEX
  • Secrets. Remplacez les autres valeurs provisoires CHANGE_ME par les valeurs aléatoires générées précédemment. Utilisez une valeur différente pour chaque variable :
BUZZ_RELAY_PRIVATE_KEY=CHANGE_ME_64_HEX_PRIVATE_KEY
BUZZ_GIT_HOOK_HMAC_SECRET=CHANGE_ME_RANDOM_64_HEX
POSTGRES_PASSWORD=CHANGE_ME_RANDOM_PASSWORD
REDIS_PASSWORD=CHANGE_ME_RANDOM_PASSWORD
TYPESENSE_API_KEY=CHANGE_ME_RANDOM_API_KEY
BUZZ_S3_ACCESS_KEY=CHANGE_ME_RANDOM_ACCESS_KEY
BUZZ_S3_SECRET_KEY=CHANGE_ME_RANDOM_SECRET_KEY

Conservez toutes les autres valeurs, notamment les ports, le nom de la base de données, le nom du bucket et les niveaux de journalisation, car elles sont déjà correctement configurées.

Pour enregistrer le fichier et quitter nano, appuyez sur Ctrl+X → Y → Entrée.

4. Démarrez les services de Buzz

Démarrez le relais Buzz, la base de données, le cache et le service de stockage des fichiers à l’aide d’une seule commande docker compose :

docker compose up -d

Le premier démarrage peut prendre quelques minutes, car Docker doit télécharger les images nécessaires. Une fois l’opération terminée, vérifiez que tous les services fonctionnent :

docker compose ps

Chaque service doit afficher le statut Up ou healthy. Il est normal que le service minio-init affiche Exited : il s’exécute une seule fois pour créer le bucket de stockage, puis s’arrête.

Si le relais affiche le statut Restarting, consultez ses journaux :

docker compose logs relay

La cause la plus fréquente est une valeur provisoire encore présente dans le fichier .env. Recherchez les valeurs restantes à l’aide des commandes suivantes :

grep CHANGE_ME .env
grep buzz.example.com .env

Si l’une de ces commandes affiche des lignes, rouvrez le fichier .env et remplacez les valeurs provisoires restantes.

5. Activez HTTPS avec Caddy

Votre relais Buzz fonctionne, mais l’accès public n’est pas encore sécurisé.

Le fichier de configuration compose.caddy.yml, distinct du fichier principal, permet d’ajouter Caddy. Celui-ci obtient un certificat TLS gratuit auprès de Let’s Encrypt, achemine le trafic vers le relais et empêche tout accès à votre base de données et à votre espace de stockage de fichiers depuis Internet.

Caddy utilise le nom de domaine déjà défini dans le fichier .env. Aucune configuration supplémentaire n’est donc nécessaire. Arrêtez les services de Buzz, puis redémarrez-les avec Caddy :

docker compose down
docker compose -f compose.yml -f compose.caddy.yml up -d

Accédez à votre nom de domaine depuis un navigateur pour vérifier la configuration. Si Caddy a correctement configuré le certificat, votre navigateur doit indiquer que la connexion est sécurisée, sans afficher d’avertissement.

Si la page ne se charge pas ou si une erreur de certificat apparaît, consultez les journaux de Caddy :

docker compose logs caddy

Les causes les plus fréquentes sont les délais de propagation DNS et les ports bloqués par le pare-feu. Lorsque vous configurez le pare-feu Uncomplicated Firewall (UFW) sur votre serveur, vérifiez que les ports 80 et 443 sont ouverts.

6. Ajoutez-vous comme membre du relais et connectez-vous

Par défaut, Buzz bloque toutes les connexions. Vous devez donc vous inscrire en tant que membre avant de pouvoir vous connecter.

Exécutez la commande suivante en remplaçant npub1yourkeyhere par votre véritable clé npub :

docker compose exec relay buzz-admin add-member --pubkey npub1yourkeyhere

Ouvrez l’application de bureau Buzz sur votre ordinateur. L’écran permettant de rejoindre une communauté devrait toujours s’afficher.

Saisissez l’URL de votre relais en ajoutant le préfixe wss:// devant le nom de domaine défini dans le fichier .env. Ce préfixe indique à l’application de se connecter de manière sécurisée grâce à votre configuration HTTPS. Par exemple :

wss://buzz.example.com

L’application devrait se connecter et afficher votre espace de travail. Si la connexion échoue, vérifiez que l’URL saisie est correcte et que le relais fonctionne :

docker compose ps

7. Configurez les sauvegardes automatiques

La plupart des données de votre espace de travail Buzz, notamment les messages et les métadonnées, sont stockées dans la base de données PostgreSQL du relais. Sans sauvegardes, vous risquez de perdre ces données en cas de problème.

Commencez par créer un dossier de sauvegarde et tester une sauvegarde manuelle :

mkdir -p /backups
cd /root/buzz/deploy/compose
docker compose exec -T postgres pg_dump -U buzz buzz > /backups/buzz-test.sql
ls -la /backups/

Le fichier buzz-test.sql doit avoir une taille supérieure à 0 octet. Si c’est le cas, la sauvegarde a bien été créée.

Pour automatiser les sauvegardes, ouvrez votre crontab :

crontab -e

Si vous devez choisir un éditeur, sélectionnez nano. Ajoutez ensuite la ligne suivante à la fin du fichier. Dans cet exemple, une sauvegarde est créée chaque nuit à 2 h, heure du serveur (la plupart des hébergeurs VPS utilisent le fuseau horaire UTC par défaut) :

0 2 * * * cd /root/buzz/deploy/compose && docker compose exec -T postgres pg_dump -U buzz buzz > /backups/buzz-$(date +%Y%m%d).sql

Pour enregistrer le fichier, appuyez sur Ctrl+X → Y → Entrée. La base de données sera désormais sauvegardée automatiquement chaque nuit.

Déployez Buzz avec le template d’application de Hostinger

Pour déployer Buzz avec le template de Hostinger, accédez à la page de l’application Buzz et choisissez votre offre VPS. L’offre KVM 2, à 7,99 €/mois, dotée de deux vCPU et de 8 Go de RAM, constitue une bonne option pour bénéficier de performances adaptées à une utilisation quotidienne.

Après avoir choisi la localisation du serveur la plus proche de votre équipe et finalisé votre achat, vous serez invité à saisir votre clé publique de 64 caractères au format hexadécimal (celle que vous avez générée à partir de l’application de bureau Buzz avec NostrTool).

Le template installe automatiquement Ubuntu, Docker et tous les services nécessaires à Buzz. Une fois l’installation terminée, vous serez redirigé vers la page Gestionnaire Docker. Passez le pointeur de la souris sur Ouvrir pour afficher votre nom de domaine Buzz.

Ensuite, ouvrez l’application de bureau Buzz et saisissez l’URL de votre relais en ajoutant le préfixe wss:// devant votre nom de domaine. Par exemple :

wss://buzz-ab12.srv1234567.hstgr.cloud

Si vous disposez déjà d’un VPS Hostinger, vous pouvez également passer au template d’application Buzz. Attention : changer de système d’exploitation entraîne la réinstallation du serveur et la suppression définitive de toutes les données existantes. Sauvegardez votre VPS avant de continuer.

Pour passer au template Buzz :

  1. Ouvrez le tableau de bord Hostinger et accédez à VPS → Gérer → Système d’exploitation et panneau de configuration → Système d’exploitation.
  2. Dans la section Changer de système d’exploitation, recherchez Buzz et sélectionnez-le.
  1. Lorsque vous y êtes invité, saisissez votre clé publique hex de 64 caractères, puis suivez les instructions restantes pour terminer la configuration.

Une fois l’installation terminée, ouvrez la page Gestionnaire Docker pour retrouver votre nom de domaine Buzz. Connectez-vous ensuite depuis l’application de bureau Buzz en faisant précéder votre nom de domaine de wss://.

Pourquoi installer Buzz sur votre propre serveur ?

L’auto-hébergement de Buzz vous donne le contrôle total du relais, des données de votre espace de travail et des personnes autorisées à le rejoindre.

  • Vos données restent sur votre serveur. Le relais Buzz stocke tous les messages et événements d’activité dans sa base de données PostgreSQL, tandis que les fichiers téléversés sont conservés séparément dans MinIO. Lorsque vous auto-hébergez le relais, sa base de données fonctionne sur une infrastructure que vous gérez vous-même, plutôt que sur les serveurs de Block ou ceux d’un autre prestataire. Personne ne peut accéder aux données de votre espace de travail, les analyser ou les supprimer sans votre autorisation.
  • Vous décidez qui peut rejoindre l’espace de travail. La liste des membres du relais détermine qui est autorisé à se connecter. Vous pouvez ajouter ou supprimer des personnes et des agents IA à l’aide des commandes add-member et remove-member. Vous et votre équipe n’avez donc à passer par aucune procédure d’approbation ni liste d’attente, et vous n’êtes pas soumis aux règles d’une plateforme externe.
  • Vous définissez vos propres règles. Avec un relais auto-hébergé, vous décidez de ce que les agents peuvent faire, de la durée de conservation des données, des services auxquels le relais peut se connecter et du moment où vous souhaitez passer à une version plus récente. Si vous utilisez le relais d’un tiers, c’est son propriétaire qui prend ces décisions.

Cependant, l’auto-hébergement de Buzz ne convient pas à tout le monde. Si vous souhaitez simplement utiliser Buzz sans gérer de serveur, téléchargez l’application de bureau ou mobile et rejoignez un relais qui accepte de nouveaux membres. Vous pourrez ainsi communiquer avec les autres membres et les agents IA sans avoir à gérer Docker, les fichiers de configuration ou les sauvegardes.

Résolution des problèmes d’installation de Buzz

La plupart des problèmes d’installation de Buzz sont dus à des valeurs provisoires non remplacées dans le fichier d’environnement, à une clé publique du propriétaire dont le format est incorrect ou à des ports bloqués par le pare-feu. Voici comment identifier et résoudre chacun de ces problèmes :

  • Le relais redémarre avec le message « BUZZ_GIT_HOOK_HMAC_SECRET must be at least 32 characters ». Un ou plusieurs secrets du fichier .env contiennent encore des valeurs provisoires. Exécutez grep CHANGE_ME .env pour les repérer. Générez une nouvelle valeur aléatoire pour chaque champ concerné avec openssl rand -hex 32, modifiez le fichier à l’aide de nano .env, puis redémarrez les services avec docker compose -f compose.yml -f compose.caddy.yml up -d.
  • Le relais redémarre avec le message « RELAY_OWNER_PUBKEY required ». La clé du propriétaire est manquante ou n’est pas au bon format. Le relais exige une chaîne de 64 caractères au format hexadécimal, composée uniquement de chiffres et de lettres de A à F, et non une clé au format npub. Si vous avez collé une clé commençant par npub1, convertissez-la au format hex sur la page NostrTool, mettez à jour la valeur dans le fichier .env, puis redémarrez les services.
  • L’application de bureau ne parvient pas à se connecter. Sur votre ordinateur, exécutez la commande ping suivie de votre nom de domaine pour vérifier que celui-ci pointe vers la bonne adresse IP. Vérifiez ensuite que Caddy fonctionne en exécutant docker compose ps sur le serveur. Si tout semble correct dans les deux cas, assurez-vous que votre pare-feu autorise le trafic sur les ports 80 et 443. Ces ports doivent être ouverts pour que le trafic HTTPS puisse atteindre le relais.
  • L’application mobile affiche un code QR qui disparaît immédiatement. Le service d’appairage est peut-être inaccessible. Vérifiez que le fichier Compose de Caddy est bien inclus dans la commande de démarrage et que le chemin /pair est correctement routé. Consultez les journaux de Caddy pour rechercher d’éventuelles erreurs de routage avec docker compose logs caddy.

Mettez Buzz à jour

Pour mettre Buzz à jour vers la dernière version, récupérez le code source le plus récent ainsi que les dernières images Docker des services.

Exécutez les commandes suivantes sur le serveur :

cd /root/buzz
git pull
cd deploy/compose
docker compose -f compose.yml -f compose.caddy.yml pull
docker compose -f compose.yml -f compose.caddy.yml up -d

La mise à jour des services n’affecte pas les messages, les fichiers ni les enregistrements de votre base de données. Vos données restent intactes, car Docker les conserve dans des volumes distincts des services en cours d’exécution.

Que faire après l’installation de Buzz ?

Maintenant que votre relais Buzz fonctionne, vous pouvez ajouter les membres de votre équipe, organiser l’espace de travail et sécuriser votre installation.

  • Gérez les membres. Demandez à chaque nouveau membre de générer une clé d’identité Buzz dans l’application de bureau ou mobile, puis ajoutez-le à l’aide de sa clé npub. Vous pouvez également consulter la liste des membres ou en supprimer :
# Ajouter un membre
docker compose exec relay buzz-admin add-member --pubkey npub1yourkeyhere

# Afficher tous les membres enregistrés
docker compose exec relay buzz-admin list-members

# Supprimer un membre
docker compose exec relay buzz-admin remove-member --pubkey npub1yourkeyhere
  • Ajoutez des agents IA. Buzz permet de connecter des agents IA à l’aide de son environnement d’exécution ACP, qui fonctionne avec des outils tels que Goose, Codex et Claude Code. Chaque agent possède sa propre clé d’identité et rejoint les canaux en tant que membre. Buzz conserve également une piste d’audit complète qui permet de savoir ce que chaque agent a fait et où il est intervenu.
  • Sécurisez l’espace de travail. Le déploiement en production active par défaut le contrôle de l’appartenance au relais et l’authentification. Vérifiez les variables BUZZ_REQUIRE_RELAY_MEMBERSHIP et BUZZ_REQUIRE_AUTH_TOKEN dans le fichier .env et assurez-vous qu’elles sont toutes deux définies sur true. Ne communiquez pas l’URL de votre relais tant que vous n’avez pas ajouté les membres de votre équipe.
  • Protégez le serveur. La sécurité de votre relais Buzz dépend de celle du serveur sur lequel il fonctionne. Appliquez les bonnes pratiques de sécurité des VPS, notamment en configurant l’authentification par clé SSH et les règles de pare-feu, en activant les mises à jour de sécurité automatiques et en limitant l’accès root.

Votre nouvel espace de travail Buzz offre de nombreuses possibilités, de la mise en place de processus de travail en équipe aux revues de code assistées par l’IA. Découvrez les principaux cas d’utilisation de Buzz pour trouver des idées concrètes et savoir par où commencer.

Tout le contenu des tutoriels de ce site est soumis aux normes éditoriales et aux valeurs rigoureuses de Hostinger.

Faradilla, plus connue sous le nom de Ninda, possède 10 ans d’expérience en tant que linguiste et 5 ans en tant que spécialiste du marketing de contenu chez Hostinger. Elle aime suivre les tendances technologiques et aider les autres à résoudre leurs problèmes. Pendant son temps libre, Ninda aime apprendre de nouvelles langues et s’intéresser aux sciences de la vie, ainsi que regarder des vidéos d’animaux. Pour en savoir plus sur Ninda, retrouvez-la sur LinkedIn.

Trusted by 4+ million website owners worldwide

See our 73 033 reviews on Trustpilot

Commentaires

0 responses

Write a response

Veuillez remplir les champs obligatoires.Veuillez cocher la case de la confidentialité.Veuillez remplir les champs obligatoires et accepter la case de confidentialité.

Thank you! Your comment has been successfully submitted. It will be approved within the next 24 hours.