Sync de note d'obsidienne d'auto-hébergement (gratuitement)
Lors de la recherche d'une nouvelle application de prise de notes, on peut être facilement dépassé. Il existe d'innombrables options et ils ont tous apparemment des fonctionnalités similaires. Certains grands acteurs de la communauté des notes comprennent:
J'ai personnellement fini par choisir une application appelée Obsidian. Jusqu'à présent, c'était génial. Il possède toutes les fonctionnalités que je crois non négociables - vue de graphique, liaison inter-note, transformatrice multipliée et synchronisation hors ligne. Le seul défaut majeur d'obsidien est que pour utiliser les fonctionnalités de synchronisation, vous devez payer 8 $ par mois pour utiliser leur service. C'est bien et tout, mais j'ai trouvé un moyen de le faire gratuitement, qui prend également en charge le cryptage E2E. Laissez-moi vous montrer comment je l'ai fait.
configurer le compte AWS (niveau gratuit)
Afin d'être réellement "gratuit", nous utiliserons un compte de niveau gratuit AWS. Vous pouvez également utiliser d'autres fournisseurs de cloud comme Oracle Azure, mais AWS est mon choix.
Après avoir créé votre compte, accédez à la barre de recherche en haut de la page et recherchez EC2, et cliquez dessus.
Ensuite, sélectionnez instances à gauche et cliquez sur le bouton Big Orange Instance de lancement en haut à droite. Gardez tous les paramètres par défaut, puis (si vous n'en avez pas déjà), créez un clés SSH. Cela téléchargera un fichier se terminant avec .pem
. Gardez cela en sécurité et ne le partagez pas. C'est ainsi que vous accéderez à votre serveur à partir de maintenant.
Ensuite, dans les paramètres du réseau, assurez-vous d'appuyer sur Allow HTTP traffic from internet
et Allow HTTPS traffic from internet
. Sinon, votre serveur ne sera pas accessible.
Le dernier paramètre à configurer est le stockage. Le niveau gratuit AWS permet 20 Go de stockage, donc je recommande de définir votre stockage sur le maximum (20 Go). Terminez la création et soumettez vos configurations, et vous serez redirigé vers le tableau de bord EC2. Vous devriez maintenant voir votre nouvelle instance EC2 :! _ IMG2_
Cliquez sur l'ID d'instance et copiez l'IP publique en surbrillance ci-dessous:
Il s'agit de l'IP que nous utiliserons pour connecter. Ouvrez maintenant un terminal et accédez à votre téléchargement de votre fichier .pem
. Modifiez les autorisations de fichier avec chmod 400 <file>.pem
, puis connectez-vous à votre instance avec ssh -i <file>.pem ec2-user@<ip>
, où <ip>
est l'IP publique que vous avez copié dans la dernière étape.
Configuration de la machine virtuelle
Maintenant que nous avons accès à notre machine, nous devons installer certaines dépendances:
yum install git -y && amazon-linux-extras install docker
Ensuite, activez Docker en tant que service:
systemctl start docker && systemctl enable docker
Ensuite, clone this repo qui contient un fichier docker-compose qui configurera un proxy inversé et un conteneur Couchdb:
git clone https://github.com/vrtmrz/self-hosted-livesync-server.git
Allez dans ce répertoire et modifiez le docker-ccompose.yml
. Changez le caddy_handle_path_1
de /e=_/*
en quelque chose comme /randomword/*
Ensuite, entrez dans conf/local.ini
et modifiez authentication_redirect:
de la même manière, en utilisant le même mot que vous avez choisi pour le premier changement.
Retournez au projet Root Dir et créez un fichier .env
et créez quelques variables d'environnement :!
Gérer les demandes DNS
Maintenant que l'image est construite, nous devons lui donner un joli nom de domaine. Ce tutoriel suppose que vous possédez déjà un domaine. J'utilise CloudFlare pour gérer mon DNS, mais cela fonctionnera avec le fournisseur DNS que vous utilisez. Si vous n'êtes pas sûr, vérifiez auprès du registraire où vous avez acheté le domaine. Vous allez vouloir ajouter un enregistrement A sur le même sous-domaine que vous avez écrit dans le fichier .env
, et vous voudrez qu'il pointe vers votre instance EC2 IP publique des étapes précédentes ..
Si vous utilisez CloudFlare, assurez-vous de désélectionner l'option proxy
Construire et configurer
Tout est construit maintenant. Connectez-vous à nouveau à votre instance EC2 avec SSH et entrez dans le répertoire racine du projet dans lequel nous travaillions précédemment. Démarrez le service avec:
docker-compose -f docker-compose.yml start
Votre service est maintenant en place, et la seule chose à faire est d'aller à votre instance CouchDB. Dans un navigateur, accédez à HXXPS: // Domain / Randomword / _Utils, où <randomword>
était le mot que vous avez choisi à la place de e=_
et <domain>
est le même que vous avez spécifié dans le fichier .env
. Connectez-vous à l'aide des informations d'identification dans votre fichier .env
et vous devez être accueilli avec un écran qui ressemble à ceci:
En haut de l'écran, sélectionnez Create Database
et nommez ce que vous voulez. Sélectionnez une base de données non partitionnée.
L'utiliser avec l'obsidienne
Maintenant, tout est configuré. Il vous suffit de pointer votre obsidien. Dans Obsidian, téléchargez le plugin communautaire Self-Hosted LiveSync
: Paramètres> Plugins communautaires> Parcourir
Installez et activez-le, puis sur votre page Paramètres, vous devriez voir un onglet supplémentaire à gauche en bas. Allez-y:
Appuyez sur les emoji satellites et remplissez les champs avec vos informations. Pour Uri, vous voudrez mettre https://<yourdomain>.com/<randomword>
Notez qu'il n'y a pas de barre oblique à la fin. Pour nom d'utilisateur et mot de passe, mettez ce que vous avez écrit dans le fichier .env
. Nom de base de données est la base de données que vous avez créée sur l'instance Couchdb.
Pour le cryptage E2E, sélectionnez le curseur End to End Encryption
et créez une phrase de passe. Cela créera un mot de passe maître que vous pouvez utiliser pour crypter vos notes. Appliquez vos paramètres et appuyez sur le bouton Big Red Envoyer près du bas du panneau.
E2E est important car si quelqu'un a réussi à entrer dans votre instance de base de données, il trouverait toutes vos notes dans ClearText. L'activation de ce chiffrement crypte vos notes avant de quitter votre ordinateur afin que l'instance DB ne voit jamais vos notes, seulement des ordures brouillées:
Ensuite, appuyez sur l'emoji de swap et sélectionnez LivesYnc (ou quelle que soit la synchronisation de synchronisation que vous préférez) ._ IMG11_
Using LivesYnc vous donnera cette fonctionnalité - pas super utile, mais très cool ._ img12_
Conclusion
Maintenant, sur n'importe quel appareil que vous souhaitez synchroniser, vous répétez simplement la dernière section. J'ai inclus une image de la façon dont le flux de base se passe lors de la synchronisation ci-dessous si vous êtes intéressé. En outre, il convient de mentionner que le niveau gratuit AWS est limité à 750 heures de calcul par mois (je crois), donc cela pourrait être une raison pour vous de synchroniser périodique au lieu de LifeSync.