Changement d'adresse : IPFS
Dorénant ce blog est hosté à cette adresse : https://ipfs.io/ipns/blog.burdet.ch
Séduit par le concept de IPFS, qui allie peer-to-peer et donnée adressée par contenu “à la Git”, le présente post vous explique comment j’ai déporté l’hébergement de ce blog dans ce que sera Internet bientôt.
Un avantage, c’est que par exemple le blog pourra continuer d’être accessible pendant que mon serveur est down.
Plusieurs modifications ont été nécessaires pour parvenir à cela.
Préparation IPFS sur orion
Orion est mon serveur à tout faire, c’est lui qui héberge le code source du blog ainsi que le processus d’intégration continue (Jenkins) qui le publie vers le serveur web nginx.
Nous y allons lui ajouter une n ème brique de plus, ipfs.
On commence par créer le user ipfs :
Ensuite, sous l’identité du user ipfs, on initie le repository :
Pour adresser mon serveur par un hash fixe, je dois créer une clé spécifique :
Le hash donné ci-dessus (QmNTzWJc31KdqiiEAW4sXkDMiF96iB5Hq29RRKC9H1SFyu) sera l’url d’accès dans les namespace ipfs, à savoir /ipns/QmNTzWJc31KdqiiEAW4sXkDMiF96iB5Hq29RRKC9H1SFyu.
Cette clé est stockée dans /home/ipfs/.ipfs/keystore, qu’il faut backuper !
Finalement, il faut créer le systemd unit file et activer le service :
Réglages DNS
Afin que le blog soit accessible via des urls intelligible, comme https://ipfs.io/ipns/blog.burdet.ch à la place de https://ipfs.io/ipns/QmNTzWJc31KdqiiEAW4sXkDMiF96iB5Hq29RRKC9H1SFyu
Il faut ajouter le record TXT suivant chez dans la configuration DNS :
Redirection WEB
On configure Nginx pour indiquer au client http la redirection permanente sur la nouvelle url.
On remplace la ligne
par
On peut maintenant supprimer /srv/http/blog.burdet.ch
Réglages jekyll
Il faut spécifier que l’url racine du site à changé dans _config.yml
Intégration avec Jenkins et publication IPFS
On modifie ensuite le scripr de build jenkins (via la web ui):