Comment créer votre propre gestionnaire de favoris avec Linkding

Comment créer votre propre gestionnaire de favoris avec Linkding

Linkding est un gestionnaire de signets Web simple mais flexible pour Linux. Semblable aux gestionnaires de favoris hors ligne, il vous permet de créer et d’annoter les liens Web que vous avez accumulés au fil du temps.

Cet article vous montrera comment installer Linkding sur une machine Ubuntu 22.04 à l’aide de Docker et Docker Compose. Il mettra également en évidence comment vous pouvez créer et gérer un utilisateur non-administrateur dans votre nouvelle instance Linkding.

Pourquoi héberger votre propre gestionnaire de favoris en utilisant Linkding ?

L’un des principaux arguments de vente de Linkding est que vous pouvez le déployer rapidement sur un serveur existant et l’utiliser en quelques minutes. Cela signifie que vous n’avez pas besoin de provisionner une nouvelle machine, physique ou autre, pour héberger votre propre gestionnaire de favoris.

Une capture d'écran d'une installation Linkding fonctionnelle.

Linkding étend également les fonctionnalités de base de la plupart des gestionnaires de favoris pour inclure le partage de liens et le mode multi-utilisateur. Cela le rend idéal pour les utilisateurs qui souhaitent créer une plateforme collaborative privée pour partager des liens entre un groupe.

Obtention de Linkding et Docker Compose

Pour déployer Linkding, vous devez d’abord installer Docker avec son composant Docker Compose. Vous pouvez le faire en récupérant la clé de signature du programme sur le site Web du développeur :

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

Créez un nouveau fichier de référentiel pour votre installation Docker :

sudo nano /etc/apt/sources.list.d/docker.list

Collez la ligne de code suivante dans votre nouveau fichier de référentiel :

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Rechargez les référentiels de packages de votre système en exécutant la commande suivante :

sudo apt update && sudo apt upgradesudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx

Obtention et déploiement du conteneur Docker Linkding

Créez un nouveau dossier pour Linkding dans votre répertoire personnel et allez-y :

mkdir ~/linkding && cd ~/linkding

Utilisez votre éditeur de texte préféré pour créer un fichier « docker-compose.yml » vide :

nano. /docker-compose.yml

Collez le bloc de code suivant dans votre nouveau fichier de composition :

---
version: "3"
services:
linkding:
container_name: ${LD_CONTAINER_NAME:-linkding}
image: sissbruecker/linkding:latest
ports:
- ${LD_HOST_PORT:-9090}:9090
volumes:
- ${LD_HOST_DATA_DIR:-./data}:/etc/linkding/data
env_file:
-. env
restart: unless-stopped

Enregistrez votre nouveau docker-compose.yml, puis créez un fichier d’environnement pour votre instance. Celui-ci contiendra toutes les variables personnalisées de votre nouvelle installation :

nano ~/linkding/.env

Collez le bloc de code suivant dans votre nouveau fichier d’environnement :

LD_CONTAINER_NAME="linkding"LD_HOST_PORT="9090"LD_HOST_DATA_DIR="./data"LD_SUPERUSER_NAME="linkding"# CHANGE WITH A SECURE USERNAMELD_SUPERUSER_PASSWORD="linkding"# CHANGE WITH A SECURE PASSWORDLD_DISABLE_BACKGROUND_TASKS="False"LD_DISABLE_URL_VALIDATION="False"LD_ENABLE_AUTH_PROXY="False"LD_CSRF_TRUSTED_ORIGINS="https://linkding.your-domain-name.here"

Enfin, créez votre nouveau conteneur Docker en exécutant la commande suivante :

docker compose up -d

Création d’un proxy inverse Nginx pour SSL

À ce stade, vous disposez désormais d’une instance fonctionnelle de Linkding exécutée sur le port 9090. Cependant, pour pouvoir y accéder publiquement, vous devez créer un proxy inverse qui sécurisera les connexions entrantes à l’aide de SSL.

Créez un nouveau fichier de configuration de site pour votre instance :

sudo nano /etc/nginx/sites-available/linkding

Collez le bloc de code suivant dans votre nouveau fichier de site :

server {
listen 80;
listen [::]:80;

root /var/www/html;
server_name linkding.your-domain-name.here;


location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:9090;
}}

Supprimez le fichier de configuration du site par défaut et créez un lien symbolique pour votre nouveau fichier de configuration vers « /etc/nginx/sites-enabled » :

sudo rm /etc/nginx/default
sudo ln -s /etc/nginx/sites-available/linkding /etc/nginx/sites-enabled/linkding

Démarrez et activez votre démon Nginx pour appliquer ses nouveaux paramètres :

sudo systemctl restart nginx
sudo systemctl enable --now nginx

Activation de SSL pour votre instance de liaison

Assurez-vous que votre ordinateur dispose du binaire Core Snap le plus récent :

sudo snap install core

Installez le package instantané Certbot de l’Electronic Frontier Foundation (EFF) :

sudo snap install certbot --classic

Testez si votre installation certbot fonctionne correctement en l’enregistrant auprès de l’EFF :

sudo certbot register --agree-tos -m ramces@email.invalid

Demandez un certificat SSL pour votre instance en exécutant la commande suivante :

sudo certbot --nginx -d linkding.your-domain-name.here

Testez si votre nouvelle instance est à la fois sécurisée et fonctionnelle en chargeant son adresse sur un navigateur Web.

Une capture d'écran montrant la page de connexion pour la création de liens.

Création d’un nouvel utilisateur dans Linkding

Connectez-vous à votre nouvelle instance Linkding en utilisant les informations d’identification de superutilisateur que vous avez fournies dans votre fichier « .env ».

Une capture d'écran montrant une invite de connexion remplie pour Linkding.

Cliquez sur le lien « Paramètres » dans le coin supérieur droit de la page.

Une capture d'écran mettant en évidence le lien Paramètres dans la page d'accueil de Linkding.

Cliquez sur l’onglet « Admin » sur la page des paramètres de Linkding. Cela fera apparaître le panneau d’administrateur de liaison.

Une capture d'écran mettant en évidence l'onglet Admin dans la page des paramètres de liaison.

Pour ajouter un nouvel utilisateur, cliquez sur le lien « Ajouter » à côté de la ligne Utilisateurs sous la catégorie « Authentification et autorisation ».

Une capture d'écran mettant en évidence le lien Ajouter sous la section Utilisateurs du panneau d'administration Linkding.

Fournissez un nom d’utilisateur et un mot de passe pour votre nouvel utilisateur Linkding, puis cliquez sur « Enregistrer » pour activer votre nouvel utilisateur.

Une capture d'écran montrant une invite de nouvel utilisateur remplie.

Testez si votre nouvel utilisateur fonctionne correctement en vous y connectant via une autre session de navigateur.

Une capture d'écran montrant le nouvel utilisateur actif.

Désactivation d’un utilisateur existant dans Linkding

Pour désactiver un utilisateur existant dans Linkding, accédez au panneau d’administration de votre instance, puis sélectionnez le lien « Utilisateurs » sous la catégorie « Authentification et autorisation ».

Une capture d'écran mettant en évidence le lien Utilisateurs dans le panneau d'administration Linkding.

Cliquez sur le nom d’utilisateur que vous souhaitez désactiver. Cela chargera le profil de cet utilisateur particulier.

Faites défiler jusqu’à la catégorie « Autorisations », puis décochez la case à côté de l’étiquette « Actif ».

Une capture d'écran mettant en évidence la case à cocher Actif sous le panneau utilisateur Linkding.

Faites défiler vers le bas de la page, puis cliquez sur « Enregistrer » pour désactiver complètement l’utilisateur.

Questions fréquemment posées

Pouvez-vous installer Linkding sans utiliser Docker ?

Non. Les développeurs de Linkding l’ont conçu pour fonctionner uniquement avec les conteneurs Docker. En effet, le programme comporte un certain nombre de co-dépendances qui doivent être déployées dans un ordre et d’une manière spécifiques pour fonctionner correctement.

Est-il possible d’importer des favoris existants vers Linkding ?

Oui. Il est possible d’importer une liste de favoris provenant d’autres gestionnaires de favoris externes. Par exemple, vous pouvez copier vos favoris de Google Chrome et de Microsoft Edge directement vers Linkding.

Est-il possible de sauvegarder la base de données Linkding en dehors de Docker ?

Oui. Il existe deux manières de sauvegarder une base de données Linkding à partir de son conteneur Docker. Tout d’abord, vous pouvez accéder à la page Paramètres, puis accéder à la catégorie « Exporter » sous l’onglet « Général ». En dessous, cliquez sur le bouton « Télécharger » pour sauvegarder les favoris de l’utilisateur actuel.

Deuxièmement, vous pouvez vous connecter à votre serveur Linkding et copier le fichier « db.sqlite3 » dans le répertoire « ~/linkding/data ». L’avantage de cette approche par rapport à la première est que le fichier « db.sqlite3 » contient l’intégralité de la base de données de signets pour l’ensemble de l’instance.

Crédit image : Lauren Mancke via Unsplash (arrière-plan) Linkding Github (Logo). Toutes les modifications et captures d’écran par Ramces Red.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *