Come creare il tuo gestore di segnalibri con Linkding

Come creare il tuo gestore di segnalibri con Linkding

Linkding è un gestore di segnalibri basato sul Web semplice ma flessibile per Linux. Simile ai gestori di segnalibri offline, ti consente di creare e annotare i collegamenti web che hai accumulato nel tempo.

Questo articolo ti mostrerà come installare Linkding su una macchina Ubuntu 22.04 utilizzando Docker e Docker Compose. Evidenzierà inoltre come creare e gestire un utente non amministratore all’interno della tua nuova istanza di Linkding.

Perché ospitare il proprio gestore di segnalibri utilizzando Linkding?

Uno dei maggiori punti di forza di Linkding è che puoi distribuirlo rapidamente su un server esistente e utilizzarlo in pochi minuti. Ciò significa che non è necessario fornire una nuova macchina, fisica o di altro tipo, per ospitare il proprio gestore di segnalibri.

Uno screenshot di un'installazione Linkding funzionante.

Il collegamento estende inoltre le funzionalità di base presenti nella maggior parte dei gestori di segnalibri per includere la condivisione dei collegamenti e la modalità multiutente. Ciò lo rende ideale per gli utenti che desiderano creare una piattaforma collaborativa privata per condividere collegamenti tra un gruppo.

Ottenere Linkding e Docker Compose

Per distribuire Linkding, devi prima installare Docker insieme al suo componente Docker Compose. Puoi farlo recuperando la chiave di firma del programma dal sito web dello sviluppatore:

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

Crea un nuovo file repository per l’installazione di Docker:

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

Incolla la seguente riga di codice all’interno del tuo nuovo file repository:

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

Ricarica i repository dei pacchetti del tuo sistema eseguendo il comando seguente:

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

Ottenimento e distribuzione del contenitore Docker Linkding

Crea una nuova cartella per Linkding all’interno della tua home directory ed entra al suo interno:

mkdir ~/linkding && cd ~/linkding

Utilizza il tuo editor di testo preferito per creare un file “docker-compose.yml” vuoto:

nano. /docker-compose.yml

Incolla il seguente blocco di codice all’interno del tuo nuovo file di composizione:

---
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

Salva il tuo nuovo docker-compose.yml, quindi crea un file di ambiente per la tua istanza. Questo conterrà tutte le variabili personalizzate per la tua nuova installazione:

nano ~/linkding/.env

Incolla il seguente blocco di codice all’interno del tuo nuovo file di ambiente:

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"

Infine, crea il tuo nuovo contenitore Docker eseguendo il comando seguente:

docker compose up -d

Creazione di un proxy inverso Nginx per SSL

A questo punto, ora hai un’istanza funzionante di Linkding in esecuzione sulla porta 9090. Tuttavia, per potervi accedere pubblicamente, devi creare un proxy inverso che proteggerà le connessioni in entrata utilizzando SSL.

Crea un nuovo file di configurazione del sito per la tua istanza:

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

Incolla il seguente blocco di codice all’interno del nuovo file del sito:

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;
}}

Rimuovi il file di configurazione del sito predefinito e crea un collegamento simbolico per il tuo nuovo file di configurazione su “/etc/nginx/sites-enabled”:

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

Avvia e abilita il tuo demone Nginx ad applicare le sue nuove impostazioni:

sudo systemctl restart nginx
sudo systemctl enable --now nginx

Abilitazione di SSL per la tua istanza di collegamento

Assicurati che il tuo computer disponga del file binario core snap più recente:

sudo snap install core

Installa il pacchetto snap Certbot di Electronic Frontier Foundation (EFF):

sudo snap install certbot --classic

Verifica se la tua installazione certbot funziona correttamente registrandola su EFF:

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

Richiedi un certificato SSL per la tua istanza eseguendo il comando seguente:

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

Verifica se la tua nuova istanza è sicura e funzionante caricando il suo indirizzo su un browser web.

Uno screenshot che mostra la pagina di accesso per il collegamento.

Creazione di un nuovo utente in Linkding

Accedi alla tua nuova istanza di Linkding utilizzando le credenziali di superutente che hai fornito nel file “.env”.

Uno screenshot che mostra una richiesta di accesso compilata per Linkding.

Fare clic sul collegamento “Impostazioni” nell’angolo in alto a destra della pagina.

Uno screenshot che evidenzia il collegamento Impostazioni nella home page di Linkding.

Fai clic sulla scheda “Amministratore” nella pagina delle impostazioni di Linkding. Verrà visualizzato il pannello di amministrazione di Linkding.

Uno screenshot che evidenzia la scheda Amministrazione nella pagina delle impostazioni di collegamento.

Per aggiungere un nuovo utente, fare clic sul collegamento “Aggiungi” accanto alla riga Utenti nella categoria “Autenticazione e autorizzazione”.

Uno screenshot che evidenzia il collegamento Aggiungi nella sezione utenti nel pannello di amministrazione di Collegamento.

Fornisci un nome utente e una password per il tuo nuovo utente Linkding, quindi fai clic su “Salva” per attivare il tuo nuovo utente.

Uno screenshot che mostra un nuovo prompt utente compilato.

Verifica se il tuo nuovo utente funziona correttamente accedendo tramite una sessione del browser diversa.

Uno screenshot che mostra il nuovo utente funzionante.

Disabilitare un utente esistente nel collegamento

Per disabilitare un utente esistente in Linkding, vai al pannello di amministrazione della tua istanza, quindi seleziona il collegamento “Utenti” nella categoria “Autenticazione e autorizzazione”.

Uno screenshot che evidenzia il collegamento Utenti nel pannello di amministrazione Collegamento.

Fai clic sul nome utente che desideri disattivare. Questo caricherà il profilo per quel particolare utente.

Scorri verso il basso fino alla categoria “Autorizzazioni”, quindi deseleziona la casella di controllo accanto all’etichetta “Attivo”.

Uno screenshot che evidenzia la casella di controllo Attivo nel pannello utente Collegamento.

Scorri verso il basso fino alla fine della pagina, quindi fai clic su “Salva” per disabilitare completamente l’utente.

Domande frequenti

Puoi installare Linkding senza utilizzare Docker?

No. Gli sviluppatori di Linkding lo hanno progettato per funzionare solo con i contenitori Docker. Questo perché il programma ha una serie di co-dipendenze che devono essere implementate in un ordine specifico e in un modo specifico per funzionare correttamente.

È possibile importare i segnalibri esistenti su Linkding?

SÌ. È possibile importare un elenco di segnalibri da altri gestori di segnalibri esterni. Ad esempio, puoi copiare i tuoi segnalibri sia da Google Chrome che da Microsoft Edge direttamente su Linkding.

È possibile eseguire il backup del database Linkding all’esterno di Docker?

SÌ. Esistono due modi per eseguire il backup di un database Linkding dal relativo contenitore Docker. Innanzitutto, puoi andare alla pagina Impostazioni, quindi andare alla categoria “Esporta” nella scheda “Generale”. Sotto, fai clic sul pulsante “Download” per eseguire il backup dei segnalibri dell’utente corrente.

In secondo luogo, puoi accedere al tuo server Linkding e copiare il file “db.sqlite3″ nella directory “~/linkding/data”. Il vantaggio di questo approccio rispetto al primo è che il file “db.sqlite3″ contiene l’intero database dei segnalibri per l’intera istanza.

Credito immagine: Lauren Mancke tramite Unsplash (Sfondo) Collegamento a Github (Logo). Tutte le modifiche e gli screenshot di Ramces Red.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *