Créer une communauté
Chaque communauté fonctionne sur son propre serveur : une petite machine qui héberge les membres, les annonces et le registre de cette communauté. Une personne sur place s'en occupe. Si votre ville ou votre vallée n'en a pas encore, cela pourrait être vous.
Ce que demande de faire tourner une communauté
Environ une demi-heure, si vous savez suivre des instructions. Six choses à savoir au préalable :
- Ce que cela coûte. Le logiciel est gratuit. Il fonctionne sur un ordinateur disponible qui reste allumé à la maison (un mini PC, un NAS ou un Raspberry Pi avec un système 64 bits), ou sur un petit serveur loué pour quelques dollars par mois (environ 6 $ US).
- Qui l'héberge. C'est vous, sur votre propre machine ou celle que vous louez. Il n'a jamais besoin de beanpool.org : votre propre adresse web fonctionne.
- Ce que vous prenez en charge. Les signalements de vos membres vous parviennent. Le dossier de données vous revient pour la sauvegarde, avec un code de récupération. Conservez deux propriétaires. Gardez le serveur allumé et à jour.
- Ce que vous ne voyez jamais. Les messages directs de vos membres.
- Docker d'abord. Docker doit être installé sur la machine avant d'exécuter le bloc ci-dessous ; un serveur fraîchement loué n'en a pas.
- Une adresse que les téléphones peuvent joindre. Les téléphones ne joignent une communauté sur Internet que via https. Sur un serveur loué avec une adresse IP publique et les ports 80 et 443 ouverts, cette adresse IP suffit : votre serveur obtient son propre certificat pour celle-ci, sans compte Cloudflare, et de même pour un domaine qui vous appartient. À la maison, ou sans port ouvert, la revendication vous attribue un nom gratuit se terminant par .beanpool.org, via un tunnel que votre serveur gère lui-même. Une simple adresse en http:// ne fonctionne que sur un réseau domestique.
Ce dont vous avez la charge
Vous et les administrateurs que vous désignez êtes les modérateurs de votre communauté : les signalements vous parviennent. Les données de vos membres résident sur votre machine, vous veillez donc à en faire des sauvegardes. Vous pouvez lire les échanges d'entreprises et les discussions d'événements ; vous ne pouvez pas lire les messages directs. Vous invitez les premiers membres, et ils invitent les suivants.
L'application de paramètres
Votre serveur est doté de sa propre application de paramètres dans le navigateur. Depuis celle-ci, vous nommez votre communauté, désignez un propriétaire et des administrateurs qui se connectent avec leurs propres clés, imprimez des invitations QR, surveillez l'état du disque, choisissez une adresse web publique ou un tunnel, et aidez un membre ayant perdu à la fois son téléphone et ses 12 mots à récupérer son compte sur un nouveau téléphone, grâce à un code à usage unique que vous confirmez en personne.
Privé dès le premier démarrage
Les annonces, la carte, les messages et les soldes d'une communauté sont réservés à ses membres dès le démarrage de son serveur ; il n'y a rien à activer. Toute personne ouvrant son adresse sans compte est redirigée vers la communauté globale, où elle peut voir ce qui est proposé à proximité et demander à participer.
Liaison avec une communauté voisine
Deux communautés peuvent convenir d'une liaison afin que leurs membres puissent échanger entre eux. Les haricots ne quittent jamais leur communauté d'origine : chaque duo tient le décompte continu de ce qu'une communauté doit à l'autre, et chaque côté fixe sa propre limite. La liaison est désactivée tant que les deux gestionnaires ne l'ont pas activée, et cela reste récent : elle est développée, avec ses écrans dans l'application web, et n'a été testée qu'entre deux de nos propres communautés de test, jamais entre des communautés réelles.
Votre adresse
Choisissez-la avant de coller, et modifiez la dernière ligne en conséquence. Si vous avez déjà collé, appuyez sur Entrée lors des questions, puis réexécutez la dernière ligne : le code de revendication attend un téléphone. Un serveur loué avec une adresse IP publique et les ports 80 et 443 ouverts : ajoutez --ip et son adresse IP, comme dans beanpool claim --ip 203.0.113.7. Votre serveur obtient son propre certificat pour cette adresse auprès de Let's Encrypt, via le port 80, et les téléphones y accèdent sur https://203.0.113.7. Un ordinateur à la maison, ou aucun port ouvert : laissez tel quel. La commande demande le début d'un nom gratuit (tapez simplement votreville pour votreville.beanpool.org ; Entrée pour ignorer), accessible via un tunnel que votre serveur gère lui-même, et attend jusqu'à trois minutes pour qu'il soit actif. Votre propre domaine : faites pointer un enregistrement A vers l'adresse IP du serveur, ouvrez les ports 80 et 443, et ajoutez --address https://votre.domaine. Un nom persiste lors d'un changement de serveur ; un numéro, non : vous pouvez ajouter un nom plus tard dans les Paramètres, et les membres qui utilisent l'adresse IP continuent de fonctionner. Pour choisir plus tard dans les Paramètres, ajoutez --no-name. Une simple adresse en http:// ne fonctionne que sur un réseau domestique : les téléphones la refusent sur Internet, et la revendication vous en avertit. Si le service d'adresses du projet BeanPool est indisponible, la revendication fonctionne quand même.
Installation
Ensuite, sur cette machine où Docker est installé, collez ce bloc unique. Il récupère le fichier compose, crée le réseau utilisé par le serveur, télécharge l'image publiée (Intel/AMD ou ARM64), la démarre, attend que le serveur ait généré son code de revendication à usage unique (jusqu'à cinq minutes, pour un premier démarrage lent sur un Raspberry Pi), et le revendique. Il n'y a rien à configurer avant le démarrage.
git clone https://github.com/beanpool-org/beanpool.git && cd beanpool
docker network create beanpool-shared
docker compose pull
docker compose up -d
echo "Waiting for the server to make its claim code (up to 5 minutes)..."
for i in $(seq 60); do docker compose exec -T beanpool-node test -f /data/claim-code.txt </dev/null 2>/dev/null && break; sleep 5; done
docker compose exec -T beanpool-node test -f /data/claim-code.txt </dev/null 2>/dev/null || echo "No claim code after 5 minutes. The server's log says why: docker compose logs beanpool-node"
docker compose exec beanpool-node beanpool claim
La dernière ligne : beanpool claim
- Le code et le QR code. Un code de revendication à usage unique et un QR code s'affichent. Scannez le QR code avec l'appareil photo de votre téléphone, ou ouvrez BeanPool, saisissez l'adresse du serveur sous Trouver votre communauté et touchez Revendiquer. Ce téléphone devient le propriétaire.
- Paramètres. Ouvrez votre adresse (ou l'adresse propre du serveur) suivie de /settings. L'assistant de configuration nomme votre communauté, vous invite à ajouter un second propriétaire et génère trois invitations fondatrices. Définissez votre emplacement sur la carte sous Identité du nœud afin que les personnes à proximité puissent vous trouver.
Si le bloc affiche No claim code after 5 minutes, ou si beanpool claim indique This community has no claim code waiting, le serveur n'a pas fini de démarrer : docker compose logs beanpool-node vous montre où il en est. Dès que le journal indique que la communauté n'a pas encore de propriétaire et dispose d'un code de revendication, réexécutez la dernière ligne. Les étapes complètes figurent dans la configuration initiale du manuel de l'opérateur.
Recommandé : gardez votre communauté en marche lors des mises à jour de Docker
L'étape se trouve dans la page « Updates and health » du manuel de l'opérateur. Un assistant IA qui fait l'installation exécute toujours cette étape (Configurer votre serveur avec un assistant IA).
Voir sur GitHub →