J'ai encore changé mon setup serveurs à la maison... Je pense que dès qu'un truc tourne rond ça m'angoisse, me perturbe et m'incite à tout éclater pour recommencer 😦 🥳
Exit UNRAID, retour sur Debian server + Docker (et toujours dockge, ultra pratique !) \o/
J'en ai profité pour racheter un mini PC HP EliteDesk 705 G4, en Amazon refurbished, avec un Ryzen 5 Pro 2400ge, 16Go de RAM et NVMe+SSD. Sous Debian également, son job est de faire tourner ce blog, AdGuardHome, un proxy Nginx et un speedtest. Pour l'instant, il peut faire bien plus.
UNRAID tournait sur un HP ProDesk 400 G6 Desktop Mini PC embarquant un i5-10500T, 12Go de RAM et NVMe/SSD. C'est lui qui s'est pris un reset des familles (ou presque vu qu'UNRAID tourne sur une clé USB) et après ajout d'une Debian server, je commence à réinstaller du Plex/*arr + Usenet/BitTorrent. Je voulais lui ajouter un peu de stockage et je suis tombé sur un sympathique rack sur Amazon : ORICO Station d'Accueil 5 Baies pour Disques Durs avec Fonction de Clonage Hors Ligne
Pour 130€, c'est un dock avec 5 slots SATA, en USB et alimentation externe. Évidemment, vu l'USB, faut pas s'emballer et utiliser ça pour du gaming. Mais pour stocker des documents, seeder en BitTorrent ou streamer une vidéo c'est parfait !
Il y a un petit bouton aux fesses pour activer le mode PC ou clonage. J'ai pas testé mais il semble que ce soit tout à fait au point :)
En PC les disques sont reconnus tout de suite sur Windows comme Linux, je les ai montés dans /mnt/DataExt et Films, Series etc.
Mon serveur embarque UNRAID qui gère les Dockers via un panel bien fait mais qui implique qu'ils soient au préalable disponibles dans leur "store" d'applications. C'est un peu limitant quand ce qu'on souhaite n'y est pas et, surtout, qu'on vient de Linux où tout peut se lancer en CLI par exemple.
UNRAID permet d'installer un plugin docker-compose qui ajoute cette fonctionnalité en bas de l'onglet Docker mais c'est pas le plus ergonomique.
Dockge, créé par louislam, s'installe évidemment en Docker et permet de gérer tous les compose.yml simplement depuis une interface dédiée
Plus simple, plus pratique. Et ça s'installe partout où on veut 😄
J'ai pu récupérer 90% de mes articles, y'a un paquet de mise en page à refaire (un jour...) et j'ai perdu ceux depuis mars 2022. Certains m'ont contactés en m'indiquant qu'ils avaient des archives via RSS, si vous avez les images ça peut servir en effet :) Si vous voulez commenter les articles il faut vous inscrire sur le blog (je me moque des IP et emails, j'en ferai rien) sinon il y a toujours Discord.
Le stockage sur Telegram via TelDrive et rClone
Le stockage "illimité" à pas cher chez Amazon, Google et Dropbox : c'est terminé ! On en a abusé et bien profité. Il reste Opendrive, chez qui j'ai eu un compte, qui permet de stocker de manière illimité mais ils limitent la vitesse d'upload (et non d'accès) passés les 15To environ. Ceci dit, pour 10€/mois, ça en fait un bon endroit pour stocker quelques documents chiffrés via rClone (montez ça en WebDav, c'est le plus stable).
Depuis quelques mois divyam234 joue avec le stockage de Telegram et il a modifié une version de rClone pour l'intégrer dans les remotes :
On profite du chiffrement de Telegram,
DL/UP via des bots Telegram, chacun étant limité en actions et vitesse d'upload (5Mo/s sauf erreur), il est recommandé d'en utiliser au moins 4 parallèlement,
Utilisable via rClone (montage, upload, cache),
Le stockage est illimité et lié à votre compte Telegram.
Les risques : avec l'abus qui se profile TelDrive et/ou rClone risquent d'être bannis, à trop stocker vous risquez d'être banni.
Passons aux choses sérieuses : - Un environnement Linux, - Un compte Telegram (que vous pouvez potentiellement perdre => une eSIM Free à 2€ est parfaite), un canal et des bots, - Créer une app Telegram et en récupérer les ID/Hash, - Une base de données Postgres (à auto-héberger en Docker par exemple), - TelDrive de divyam234 qui est un outil d'accès au stockage Telegram avec WebUI, - Sa version modifiée de rClone, - Suivre mon tutoriel \o/
Pour créer un canal sur Telegram il faut cliquer sur l'icône en haut à droite de l'application, sorte de carré avec un stylo, puis Nouveau canal, le nommer et je pense qu'il convient de le laisser en Privé pour ce type d’utilisation.
Ensuite on crée une application, gratuite évidemment, qui permettra de récupérer des identifiants à utiliser pour TelDrive. Se rendre sur https://my.telegram.org/auth, renseigner son numéro et y accéder via le code unique reçu sur Telegram. Aller ensuite sur https://my.telegram.org/apps et en créer une "bidon". Le but étant d'obtenir l'ID et le Hash.
TelDrive nécessite une base de données PostgreSQL L'auteur recommande de se servir de NeonTech en version gratuite, je ne suis pas à un Docker près et préfère héberger ça.
On continue avec TelDrive. Voici mon exemple en Docker. J'utilise toujours en partie Watchtower, si ce n'est pas votre cas retirez la partie "labels". Les variables sont à remplir/ajouter selon les besoins :
APP_ID et APP_HASH sur les informations obtenues en créant l'application Telegram
JWT_SECRET est un token d'accès à votre compte Telegram. Il recommande d'en créer un unique et aléatoire via une génération openssl : openssl rand -hex 32
DATABASE_URL reprend les infos remplies précédemment avec le Docker Postgre
COOKIE_SAME_SITE ne semble pas être nécessaire, j'ai pas testé sans
LAZY_STREAM_BOT (qu'il vient de passer en false par défaut ce soir) pour que les bots ne se lancent qu'en cas d'utilisation
La WebUI est servie sur le port 3120 et on s'y connecte avec notre compte Telegram
Commencer par aller dans les options et sélectionner le canal Telegram pour le stockage des fichiers
Puis ajouter des bots. Ces derniers serviront pour UP/DL via TelDrive, donc rClone. Pour ça aller sur Telegram, contacter BotFather (@BotFather) et créer les bots 1 par 1 avec la commande /newbot puis copier 1 par 1 les token des bots dans cet encart (oui, c'est ch*ant).
Et pour terminer, mettre autant d'uploads simultanés que de bots créés
Voici venu le temps des rires et des chants d'installer rClone, en version modifiée bien entendu. J'ai testé sur Ubuntu (faut que je regarde sur UNRAID si je peux en installer 2 en parallèle), j'ai pas compilé mais installé directement le .deb
Il nous faudra une session (cookie) TelDrive pour créer le remote. Pour l'obtenir, se rendre sur la WebUI, F12 (sous Firefox) et onglet Storage puis cookie et récupérercelui de TelDrive. Ce sera l'access token pour configurer rClone (je passe les détails, ça doit faire 7-8 ans que je l'explique) avec un remote TelDrive (numéro 47).
Par habitude j'ai ensuite créer un remote chiffré mais c'est inutile vu que Telegram est par défaut chiffré...
Au final le fichier de configuration rClone ressemble à ceci :
De là on peut repartir comme en 40 avec nos scripts de montage et d'upload, comme pour Google, Dropbox etc Gardez tout de même en tête que comme pour les ex-eldorados du stockage "illimités" à prix cassés, à force d'abus des uns et des autres, cette astuce finira par disparaître.
J'ai pas mieux comme sauvegarde... Plus d'1 an d'articles perdus mais c'est mieux que rien. De toute manière j'avais surtout publié sur rClone et Google et cette solution de stockage en ligne est maintenant obsolète.
J'ai un vieux backup .xml de l'époque où j'avais transféré Wordpress vers Ghost, je tenterai de l'ajouter.
Entre boulot par-dessus la tête et galères perso, j'ai enfin réussi à monter (en partie) mon UltiMox !! :)
Tout tournait rond. Je suis geek. Fallait que je change.
Serveur Proxmox/Docker/rClone au garage à base de i3-8100, 24GB de RAM (qu'il fallait que j'augmente). PC de jeu sous Windows 10, i7-8700K, 32BG de RAM, nVidia RTX 2070.
J'ai eu envie de m'enquiquiner me faire une seule machine qui me permettrait de profiter pleinement de l'ensemble de mon matériel. Pour ça, de mon point de vue, rien de mieux que d'allier Proxmox à un environnement de bureau, Plasma (sudo apt install task-kde-desktop), avec la simplicité de Docker, la capacité de rClone et la puissance d'une RTX en passthrough sur une VM Windows dédiée au jeu vidéo. Il faut évidemment une autre carte graphique ou un processeur avec iGPU, ce qui est mon cas (puisque du coup la RTX ne sera plus utilisable sur l'hôte).
J'ai commencé mes tests la semaine passée et le passthrough RTX n'était pas terrible. J'y suis retourné lundi et SuperBoki m'a fait découvrir Parsec qui m'a permis de me connecter de manière très fluide à une VM Windows. Assez fluide pour jouer correctement à R6S à 190 FPS, pas encore ce j'avais sur un Windows natif mais je m'en approche (240 FPS).
Je me suis donc lancé dans l'aventure lundi après-midi et pensais n'en avoir que pour 24h.
C'était sans compter le boulot urgent qui m'est tombé dessus mardi (je pleure pas, j'ai besoin de gagner ma vie mais pourquoi ce jour-là ?!) et ma poisse : le i7 et sa carte-mère sont HS (ça n'aime pas la bière... j'étais crevé mardi soir), ça tourne donc avec le i3 qui m'interdit la VM de jeu sous Windows (faut que je prenne un i9-9900k vu ma CM en LGA1151), il me manque de la connectique SATA pour mon alimentation modulaire 750W Xilence (ça arrive demain, je ne peux brancher que 9 disques sur 17), mon dissipateur thermique BeQuiet est trop large pour cette CM (MSI Z390 Gaming Plus) et m'empêche de mettre mes 4 barrettes de RAM...
Zen, restons zen...
Y'a quand même du bon : j'ai pu ajouter des ventilateurs BeQuiet, la tour en compte donc 6. A voir cette été s'il refait 40°+.
Petit bémol aussi avec Plasma, Network Manager ne détecte aucun réseau. On ne peut donc pas utiliser le magasin d'applications Discover (mais on a bien Internet, les mails, KDE Connect etc). Ce qui n'empêche pas d'installer de qu'on veut sur Linux... Je verrai plus tard si ça peut se corriger d'autant que NM fonctionne très bien sous XFCE.
Je ne m'inquiète pas pour ma VM Windows, elle fonctionnera :) Je verrai ça quand j'aurais changé de CPU et vu le prix je suis un peu frileux pour l'instant. J'ai encore le laptop Alienware pour dépanner même si son dual GTX560M prend de l'âge.
Me reste donc à rebrancher l'ensemble de mes disques, à refaire du RAID, réinstaller les montages/scripts rClone et tout ce qui va avec point de vue torrenting. Usenet étant déporté avec les *arr sur un NUC.
Ah si, j'oubliais. Le VPN.
On peut installer un client VPN comme sur n'importe quel OS Linux. Le hic dans ce contexte précis c'est que du coup l'ensemble du trafic passera par le VPN. Ce que je ne veux pas. Je me sers donc d'un client VPN en Docker, avec proxy, pour passer sous VPN des applications (en dur ou Docker) et des navigateurs.
Avant le backup de 4h, sinon c'est pas marrant. Heureusement le SSD n'a rien et je peux le remonter/déchiffrer et en récupérer le contenu.
Je profite de cette "occasion" pour passer mon Archlinux de tous les jours dans le Cloud. En l'occurrence sur une VM Proxmox avec l'ISO de Manjaro Archlinux (version XFCE dans mon cas), hébergé dans mon garage, avec un accès via NoMachine. Avant j'avais accès à des documents via le Cloud, maintenant j'aurai carrément mon Bureau complet :) #hommemoderne #geekmoderne
J'ai donc accès à mon Bureau Manjaro depuis le PC de jeu sous Windows ou mes laptops. Voire même de n'importe quelle machine sur laquelle je peux installer NoMachine.
stockage
BOT
— Aujourd’hui à 16:00
FreeTD1 ==> Total size: 6.128 TiB (6737761093015 Byte)
FreeTD2 ==> Total size: 6.128 TiB (6737761093015 Byte)
FreeTD3 ==> Total size: 6.128 TiB (6737761093015 Byte)
FreeTD4 ==> Total size: 6.128 TiB (6737761093015 Byte)
Explications des variables, à adapter à votre configuration
OPTIONS="-c -P --transfers 3 --checkers 3 --size-only --drive-server-side-across-configs --drive-stop-on-upload-limit" options de rClone, le --drive-server-side-across-configs servant à tout faire passer chez Google plutôt que par mon serveur (quelques GB/s de vitesse de transfert du coup)
SAKEYS="/home/aerya/scripts/rclone/sakeys" dossier des clés SA. 1 clé par TD, chacune étant nommée comme lui => FreeTD1 = FreeTD1.json etc
[root@pve rclone]$ ls -l /home/aerya/scripts/rclone/sakeys
total 55
-rwxrwxrwx 1 root root 2333 Dec 28 11:00 FreeTD1.json
-rwxrwxrwx 1 root root 2333 Dec 28 11:00 FreeTD2.json
-rwxrwxrwx 1 root root 2333 Dec 28 11:00 FreeTD3.json
-rwxrwxrwx 1 root root 2333 Dec 28 11:00 FreeTD4.json
LOG="/home/aerya/logs/rclone.log" les logs de rClone, ça ressort sous cette forme
R1="FreeTD1" R2="FreeTD2" R3="FreeTD3" R4="FreeTD4" les remotes rClone non déchiffrés, le 1 étant copié sur le 2, le 2 sur le 3, le 3 sur le 4. Pourquoi les remotes non déchiffrés ? Pour copier les données chiffrés du 1er team drive sur tous les autres et donc utiliser le même chiffrement partout.
Je n'ai besoin que d'un remote déchiffré (FreeTD1Crypt:). Comme le contenu chiffré du Team Drive FreeTD1: est synchronisé sur les autres TDs, si le TD1 venait à "disparaître", je n'aurais qu'à ajouter à la main dans mon rclone.conf un remote déchiffré pour le FreeTD2: pour m'en servir.
[FreeTD2Crypt]
type = crypt
remote = FreeTD2:
password = motdepassesuperdur
Bien entendu le script est adaptable pour des GDrives ou GD/TD mélangés. Ici les accès aux TDs 2, 3 et 4 se font via les clés SA qui y sont liées mais on pourrait aussi faire sans clé et uniquement avec l'accès GDrive classique.
Comme beaucoup d'entre-nous, j'ai (eu) des boîtes en plastiques, des trieurs, des pochettes pour les fiches de paies, déclarations d'imposition, factures réglées, diplômes, bilans de santé et dossiers d'hospitalisation etc.
J'ai malheureusement vu dans mon entourage les désastres provoqués par des incendies ou cambriolages et la perte de certains documents. J'ai donc pris pour habitude il y a des années de scanner tous les documents papiers "importants" que je recevais et de les archiver dans des dossiers éponymes. Dossiers ensuite sauvegardés localement et sur le Cloud, après chiffrement.
Mais ça fait aussi quelques temps que je songe à optimiser tout ça, immédiatement suivi du fameux "Un jour" :) Paperless, et maintenant Paperless-ng, rendent justement toute cette numérisation plus simple.
Le principe est simple : on l'alimente (FTP, upload, email, client mobile) avec des documents (images, PDF, MSOffice, LibreOffice, .txt, scans...) et il aide à les trier (OCR, tags...), les archiver et les rend accessible via mots clés/catégories/date/whatever, en format PDF notamment.
Bien évidemment ça suppose de pouvoir scanner des documents (Cap'tain Obvious!). Du coup on voit vite si on a l'équipement requis, à savoir un modèle précis (parce que testé) de scanner ou une application Android/iOS. Notez que pour Android il y a également (et je me sers de) PaperlessApp & PaperlessShare.
Il n'intègre pas de solution de chiffrement. La logique étant qu'on stocke en général nos documents personnels dans un endroit relativement sécurisé (si vous venez de Windows, ne vous posez pas trop de questions ^^') et que chacun a sa solution de sauvegarde (3-2-1 de préférence, là on ne parle de films de vacances) qui inclut du chiffrement.
Je vais par exemple ajouter une facture depuis le navigateur
Sur ce 1er onglet on peut voir/modifier/ajouter/créer diverses informations liées au document. Je vais par exemple faire comme si c'était une facture émise par ma société pour le client M. ACHETEUR.
Paperless-ng "apprend" et gagne en autonomie. Quand j'ajoute mon client M. ACHETEUR comme Correspondant, j'indique à Paperless-ng comment repérer et attribuer ce correspondant au futurs ajouts de documents le concernant
Tout comme j'ajoute également Mon Entreprise
J'ai donc les 2 correspondants. Si j'avais une SARL je pourrais aussi ajouter le comptable par exemple.
Même principe pour le Type de document
Et les étiquettes (tags)
On retrouve tout (ou on peut le créer dans) le panneau d'administration
Le contenu est OCRisé et pourra aussi être recherché (enfin je crois)
Et voilà, j'ai mon 1er document d'archivé :)
Faut pas se mentir, comme à chaque "1ère fois" ça va me prendre du temps d'ajouter tous nos documents et de créer les tags et autres afférents. Mais ensuite ajouter les documents au fil de l'eau, souvent de manière automatique (email + tags/correspondant auto) sera bien moins chronophage !
Dans leurs docker-compose ils ajoutent le dossier /export dans les montages. Celui-ci sert à exporter tout le contenu de Paperless-ng (données, configs, docs) en vue d'une sauvegarde ou d'une migration. Utilisant Docker ce n'est pas utile. Mon dossier /home/aerya/docker est déjà sous dans un cycle de backup et il ne manque que /Data/paperless, que j'ajoute.
J'ai testé avec des fichiers Excel et Classeur, ils sont bien reconnus et transformés en PDF.
Gratuit, open-source, auto-hébergeable (sic!), clients desktop Windows/MacOS/Linux, clients Android/iOS, émulation Web (le client Linux dans une page Web), c'est plutôt joli. Bref, j'ai toujours eu la flemme d'y passer, c'est fait.
Joplin, dont le nom ne vient de Janis mais d'un pianiste, est une application de création/partage de notes, documents et to-dos notamment en markdown. On peut travailler à plusieurs sur le même documents et supporte le E2E (chiffrement de bout en bout).
La synchronisation entre les différents clients peut se faire via leur offre Cloud ou en hébergeant soi-même le serveur ou encore via des systèmes classiques tels que Nextcloud, Webdav, OneDrive, S3, Dropbox...
Voici les liens à connaître/visiter : - Le site de Joplin, - Github, - Les plugins, que j'ai pas encore pris le temps d'explorer en détail - L'aide, - Projet annexe de "Web-Viewer" qui s'installe en dur sur Linux (non testé) - Ce que j'appelle l'émulation Web : un Docker qui héberge le client desktop Linux avec VNC (et ça reste léger)
Il n'y a qu'un volume à monter, pour la base de données et attention à bien mettre l'APP_BASE_URL. Soit une URL soit sous la forme http:/IP:PORT (port 22300 par défaut).
Une fois le serveur installé, s'y connecter avec admin@localhost et admin en mot de passe. On est ensuite invité à changer le mot de passe et télécharger un client pour pouvoir utiliser Joplin.
Dans le client desktop, aller dans le menu Tools/Options pour le passer en VF notamment. Puis Synchronisation et sélectionner Joplin Server (BETA atm).
Sur mobile (Android du moins) le menu est en haut à gauche puis Configuration en bas.
J'ai pas encore fait le tour des plugins, j'y reviendrai si je découvre un truc hors du commun.
Quant à la version Web, comme je le mentionnais au début, elle doit s'installer en dur sur le serveur. Et je ne veux pas. Je lui préfère la pseudo version Web qui consiste en un Docker avec VNC et le client desktop Linux. C'est léger et propre.
J'en ai besoin pour me l'ajouter comme service dans Ferdi.
Pour des amis qui commencent à donner de l'argent à leurs ados j'ai cherché des solutions de suivi des dépenses. Vu leur âge ça va pas loin : kebab, ciné, quelques courses... Du basique.
C'est pas ce qui manque ! Oui, mais...
Qui soient respectueuses de la vie privée (donc plutôt auto-hébergées), puissent être partagées avec les parents, soient simples et compatibles Android et iOS.
Bref. Y'a plus 50 solutions finalement. Y'a peut-être mieux (plus simple je ne pense pas) mais j'ai jeté mon dévolu (et leur ai installé) sur SpendSpentSpent. C'est en anglais en plus, ça va faire bosser les mioches.
Pour le 1er lancement il faut ajouter -e ALLOW_SIGNUP=1 \. Une fois le compte Admin créé on peut recréer le Docker sans ce paramètre.
Pour le coup c'est vraiment basique mais c'est justement ce qui en fait son intérêt
La version Web est la version smartphone sur un écran plus grand. Je m'en sers pour les screens, ça m'est plus pratique.
On peut ajouter des catégories de dépenses et pour chacune des dépenses donc, agrémentées au besoin d'un emplacement GPS, d'une note voire d'une conversion de devises.
On peut également ajouter des dépenses récurrentes. Et on peut tout suivre par catégorie, jour, mois, année.
Pour les amateurs de téléchargement depuis des serveurs (sFTP, LFTP, RAR... certains reconnaîtrons), voici un outil qui peut remplacer quelques scripts lftp.
SeedSync est un outil avec WUI qui permet de télécharger automatiquement des fichiers sur un serveur donné selon des paterns. Et ça gère donc l'extraction des archives. Le nom peut prêter à confusion mais il s'agit bien d'une synchronisation à sens unique : distant => local. Pour du double-sens il y a notamment Syncthing.
On le configure rapidement avec une IP de serveur distant, son port SSH (ou sFTP, c'est la même) et un user:pwd. Puis le dossier à surveiller sur le serveur distant et celui où télécharger localement les fichiers.
La Dashboard liste alors l'ensemble des dossiers/fichiers et leur état de DL ou non.
Pour automatiser le DL on peut créer des paterns
On peut mettre en pause/reprendre.
Même sans accès Scene SeedSync est bien utile pour par exemple rapatrier chez soi des téléchargements effectués sur une seedboxe distante.
Amateur de FileRun (à voir comme une sorte de Gmail auto-hébergé), je n'ai pas encore réinstallé d'explorateur Web sur mon serveur DIY. L'occasion de tester Filebrowser et je dois dire que je ne suis pas déçu : - Simple - Gestion d'utilisateurs/droits - Partage de fichiers.
Bien entendu il n'est pas aussi complet que Next/OwnCloud, Seafile, Pydio, FileRun etc mais il est amplement suffisant pour des besoins simples comme le mien : accéder aux fichiers de mon serveur et pouvoir en DL/uploader.
L'installation est bien entendu simplifiée par Docker.
Une fois qu'on sait où l'installer, y créer le fichier qui lui servira de base de données
[root@pve rclone]$ cd /home/aerya/docker/filebrowser/
[root@pve filebrowser]$ touch filebrowser.db
Puis créer le fichier de configuration suivant leur exemple. Comme je ne vais l'utiliser qu'ne local je ne modifie rien mais j'aurais pu ajouter une URL.
Pour simplifier l'accès à nos emails depuis n'importe quel PC/tablette dans la maison j'ai voulu me réinstaller un Webmail. Un simple, qui permette de grouper tous les comptes IMAP dans une seule boîte de réception. Et évidemment gratuit. Et aussi qui ne vienne pas avec un serveur de mails (mais WTF! Depuis quand un webmail a un truc à voir avec un serveur de mails). Et plutôt moderne niveau interface. Puis, tant qu'à faire, qui existe en version Docker.
En sus de l'incontournable RoundCube, j'avais déjà testé et utilisé Rainloop. J'en ai donc profité pour chercher et tester d'autres outils sur Github.
J'ai trouvé ma petite perle :) Cypht ! Plusieurs années d’existence et toujours suivi, un développeur avec de l'humour, des issues avec des réponses, un site (très) détaillé etc. Et en plus en Docker, lui aussi suivi.
Voici par exemple de quoi l'installer très simplement pour une utilisation locale, avec MySQL (mais fonctionne aussi sans mySQL avec sqlite directement) et avec les MàJ via Watchtower
Je relaie mes articles sur mon Discord via le site public de MonitoRSS et je voulais m'ajouter d'autres flux mais, et c'est normal, il souffre de quelques limitations quand on passe par le site.
MonitoRSS permet de lier un bot à notre compte Discord et ce bot peut être utilisé sur plusieurs serveurs et relayer plusieurs flux RSS.
Une fois qu'on y a modifié le chemin de montage de MongoDB, mis token/client ID et client Secret de notre bot et l'URL de redirection, on peut lancer tout ça
docker-compose up -d
Il va construire 2 images au passage et lancer la stack.
Creating network "mrss_default" with the default driver
Building mrss-bot
[...]
Successfully tagged mrss_mrss-bot:latest
WARNING: Image for service mrss-bot was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Building mrss-web
[...]
Successfully tagged mrss_mrss-web:latest
WARNING: Image for service mrss-web was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Creating mrss-redis-container ... done
Creating mrss-mongodb-container ... done
Creating mrss-bot-container ... done
Creating mrss-web-container ... done
On peut maintenant aller sur notre site
Il faut commencer par inviter le bot sur le serveur Discord et l'autoriser à lire/envoyer des messages et y intégrer des liens
Même chose enfin pour accéder au panneau de contrôle (bouton Control Panel donc)
On arrive sur notre interface de gestion des flux
Pour ajouter un flux RSS il suffit de sélectionner le serveur concerné à gauche puis d'entrer une URL de flux à suivre et un salon où poster automatiquement
On peut laisser tel quel, c'est le cas avec mes articles de blog par exemple. Ils seront relayés quelques minutes après leur publication.
Y'a 1 mois j'ajoutais les commentaires via Commento++.
Je viens de remplacer ça par Isso et c'est mon dernier choix Jean-Pierre ! (pour l'instant)
C'est pas parfait, du moins comme je le voudrais, mais c'est pas mal. J'avais un souci avec Commento++, je ne recevais aucune notification de commentaire. Et je ne peux pas aller voir chaque article, en quête de commentaires ou de SPAM.
Le mieux reste encore de passer par Discord mais tout le monde n'y est pas.
Pour l'installer c'est pas compliqué, ça passe par Docker
docker run -d \
--name=blogisso \
--restart always \
-p 0.0.0.0:19312:8080 \
-v /home/aerya/docker/blog/isso/config:/config \
-v /home/aerya/docker/blog/isso/db:/db \
isso
Il faut configurer la partie serveur et ensuite la cliente, cette dernière n'étant que le code qui sera à insérer dans le thème Ghost.
Et on l'insère ensuite dans son fichier post.hbs du thème utilisé, dans la partie des commentaires sous {{!-- If you want to embed comments, this is a good place to do it! --}}
En revanche navré pour les quelques personnes qui avaient déjà laissé des commentaires mais ils ont disparu.
Je n'avais utilisé ZFS que pour de la station de travail et je trouve mon serveur parfois poussif. Certes, cet un agrégat de petits SATA, en RAIDz-1, mais ça me surprend.
Il faut que je regarde de plus près la configuration de ZFS mais je voulais aussi faire un test de vitesse qui me servirait notamment de point de comparaison pour la suite.
J'utilise Bonnie++, (vieil) utilitaire de benchmark de système de fichiers dont voici le man ("manuel") et le site de son auteur. On l'installe tout simplement via apt par exemple
sudo apt-get install bonnie++
Il y a plusieurs manière de l'utiliser, voici un exemple simple :
bonnie++ -d /rpool/ -s 48G -n 2 -f -b -u root
-d /rpool = où effectuer le test. /rpool étant un de mes pools RAIDz-1 -s 48G : taille du fichier de test, Bonnie++ recommande le double de la RAM -n 2 : nombre de fichiers utilisés pour le test -f : fast mod -b : pas de buffer d'écriture (pour un accès direct et donc plus réaliste) -u root : utilisateur d'exécution
Ce qui me les sert bien en version Web (et lisible)
Maintenant faut bien entendu interpréter les résultats. Ce qui m'intéressait dans l'immédiat ce sont les M/sec des I/O. Soit 613MB/s en écriture (input) et 311MB/s en lecture (Output). Ce que je peux confirmer avec dd :
TEST en écriture
[root@pve aerya]$ time sh -c "dd if=/dev/zero of=/rpool/test.tmp bs=4k count=2000000 && sync"
2000000+0 records in
2000000+0 records out
8192000000 bytes (8.2 GB, 7.6 GiB) copied, 9.71033 s, 844 MB/s
real 0m12.822s
user 0m1.181s
sys 0m7.522s
TEST en lecture
[root@pve aerya]$ time sh -c "dd if=/rpool/test.tmp of=/dev/null bs=4k"
2000000+0 records in
2000000+0 records out
8192000000 bytes (8.2 GB, 7.6 GiB) copied, 26.5967 s, 308 MB/s
real 0m26.598s
user 0m1.197s
sys 0m25.379s
Hey ! Blaireau ! Pourquoi tu nous parles de bonnie++ alors que tu as la même en plus simple et rapide avec dd ?!
Parce que Bonnie++ est plus complet (latence etc) et que c'est un point de comparaison plus fiable et complet quand on veut tweaker un peu ZFS.
This is a brand new site that's just getting started. Things will be up and running here shortly, but you can subscribe in the meantime if you'd like to stay up to date and receive emails when new content is published!