Cómo crear su propio administrador de marcadores con enlaces

Cómo crear su propio administrador de marcadores con enlaces

Linkding es un administrador de marcadores basado en web simple pero flexible para Linux. Al igual que los administradores de marcadores sin conexión, le permite crear y anotar los enlaces web que ha acumulado con el tiempo.

Este artículo le mostrará cómo puede instalar Linkding en una máquina Ubuntu 22.04 usando Docker y Docker Compose. También resaltará cómo puede crear y administrar un usuario no administrador dentro de su nueva instancia de Linkding.

¿Por qué alojar su propio administrador de marcadores utilizando Linkding?

Uno de los mayores puntos de venta de Linkding es que puede implementarlo rápidamente en un servidor existente y usarlo en unos minutos. Esto significa que no necesita aprovisionar una nueva máquina, física o de otro tipo, para alojar su propio administrador de marcadores.

Una captura de pantalla de una instalación de Linkding en funcionamiento.

Linkding también amplía las funciones básicas que se encuentran en la mayoría de los administradores de marcadores para incluir el uso compartido de enlaces y el modo multiusuario. Esto lo hace ideal para usuarios que desean crear una plataforma colaborativa privada para compartir enlaces entre un grupo.

Obtención de Linkding y Docker Compose

Para implementar Linkding, primero debe instalar Docker junto con su componente Docker Compose. Puede hacerlo obteniendo la clave de firma del programa en el sitio web del desarrollador:

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

Cree un nuevo archivo de repositorio para su instalación de Docker:

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

Pegue la siguiente línea de código dentro de su nuevo archivo de repositorio:

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

Vuelva a cargar los repositorios de paquetes de su sistema ejecutando el siguiente comando:

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

Obtención e implementación del contenedor Docker Linkding

Cree una nueva carpeta para Linkding dentro de su directorio de inicio y acceda a ella:

mkdir ~/linkding && cd ~/linkding

Utilice su editor de texto favorito para crear un archivo “docker-compose.yml” vacío:

nano. /docker-compose.yml

Pegue el siguiente bloque de código dentro de su nuevo archivo de redacción:

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

Guarde su nuevo docker-compose.yml y luego cree un archivo de entorno para su instancia. Esto contendrá todas las variables personalizadas para su nueva instalación:

nano ~/linkding/.env

Pegue el siguiente bloque de código dentro de su nuevo archivo de entorno:

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"

Por último, cree su nuevo contenedor Docker ejecutando el siguiente comando:

docker compose up -d

Crear un proxy inverso Nginx para SSL

En este punto, ahora tiene una instancia funcional de Linkding ejecutándose en el puerto 9090. Sin embargo, para poder acceder a ella públicamente, necesita crear un proxy inverso que proteja las conexiones entrantes mediante SSL.

Cree un nuevo archivo de configuración del sitio para su instancia:

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

Pegue el siguiente bloque de código dentro de su nuevo archivo de sitio:

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

Elimine el archivo de configuración del sitio predeterminado y cree un enlace simbólico para su nuevo archivo de configuración a “/etc/nginx/sites-enabled”:

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

Inicie y habilite su demonio Nginx para aplicar su nueva configuración:

sudo systemctl restart nginx
sudo systemctl enable --now nginx

Habilitación de SSL para su instancia de enlace

Asegúrese de que su máquina tenga el binario core snap más reciente:

sudo snap install core

Instale el paquete instantáneo Certbot de Electronic Frontier Foundation (EFF):

sudo snap install certbot --classic

Pruebe si la instalación de su certbot funciona correctamente registrándola en la EFF:

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

Solicite un certificado SSL para su instancia ejecutando el siguiente comando:

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

Pruebe si su nueva instancia es segura y funciona cargando su dirección en un navegador web.

Una captura de pantalla que muestra la página de inicio de sesión para vincular.

Crear un nuevo usuario en Linkding

Inicie sesión en su nueva instancia de Linkding utilizando las credenciales de superusuario que proporcionó en su archivo «.env».

Una captura de pantalla que muestra un mensaje de inicio de sesión completo para Linkding.

Haga clic en el enlace «Configuración» en la esquina superior derecha de la página.

Una captura de pantalla que resalta el enlace Configuración en la página de inicio de Linkding.

Haga clic en la pestaña «Administrador» en la página de configuración de Linkding. Esto abrirá el Panel de administrador de Linkding.

Una captura de pantalla que resalta la pestaña Administrador en la página de configuración de enlaces.

Para agregar un nuevo usuario, haga clic en el enlace «Agregar» al lado de la fila Usuarios en la categoría «Autenticación y autorización».

Una captura de pantalla que resalta el enlace Agregar en la sección de usuarios en el panel de administración de Linkding.

Proporcione un nombre de usuario y una contraseña para su nuevo usuario de Linkding, luego haga clic en «Guardar» para activar su nuevo usuario.

Una captura de pantalla que muestra un mensaje de usuario nuevo completo.

Pruebe si su nuevo usuario está funcionando correctamente iniciando sesión en él a través de una sesión de navegador diferente.

Una captura de pantalla que muestra al nuevo usuario en funcionamiento.

Deshabilitar un usuario existente en Linkding

Para deshabilitar un usuario existente en Linkding, vaya al panel de administrador de su instancia, luego seleccione el enlace «Usuarios» en la categoría «Autenticación y autorización».

Una captura de pantalla que resalta el enlace Usuarios en el panel de administración de Linkding.

Haga clic en el nombre de usuario que desea desactivar. Esto cargará el perfil de ese usuario en particular.

Desplácese hacia abajo hasta la categoría «Permisos», luego desmarque la casilla de verificación junto a la etiqueta «Activo».

Una captura de pantalla que resalta la casilla de verificación Activo debajo del panel de usuario de Linkding.

Desplácese hasta el final de la página y luego haga clic en «Guardar» para desactivar completamente al usuario.

Preguntas frecuentes

¿Puedes instalar Linkding sin usar Docker?

No. Los desarrolladores de Linkding lo diseñaron para funcionar únicamente con contenedores Docker. Esto se debe a que el programa tiene una serie de codependencias que deben implementarse en un orden específico y de una manera específica para que funcione correctamente.

¿Es posible importar marcadores existentes a Linkding?

Sí. Es posible importar una lista de marcadores de otros administradores de marcadores externos. Por ejemplo, puede copiar sus marcadores de Google Chrome y Microsoft Edge directamente a Linkding.

¿Es posible hacer una copia de seguridad de la base de datos de Linkding fuera de Docker?

Sí. Hay dos formas de hacer una copia de seguridad de una base de datos Linkding desde su contenedor Docker. Primero, puede ir a la página Configuración y luego ir a la categoría «Exportar» en la pestaña «General». Debajo, haga clic en el botón «Descargar» para hacer una copia de seguridad de los marcadores del usuario actual.

En segundo lugar, puede iniciar sesión en su servidor Linkding y copiar el archivo “db.sqlite3″ en el directorio “~/linkding/data”. La ventaja de este enfoque sobre el primero es que el archivo “db.sqlite3″ contiene toda la base de datos de marcadores para toda la instancia.

Crédito de la imagen: Lauren Mancke a través de Unsplash (fondo) Vinculando Github (logotipo). Todas las modificaciones y capturas de pantalla realizadas por Ramces Red.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *