Implementación de AFFiNE en Entornos Locales con Acceso Remoto vía Docker

AFFiNE es una plataforma de espacio de trabajo de código abierto que integra de manera fluida bases de conocimientos, edición de documentos y capacidades de pizarra virtual. Diseñada bajo el principio de "local-first", permite a los usuarios mantener el control absoluto sobre su privacidad y datos. Esta herramienta destaca por su arquitectura basada en bloques, tablas de datos integrdaas y vistas dinámicas, siendo ideal para la gestión de proyectos y la colaboración creativa. En esta guía, detallaremos el proceso de despliegue mediante Docker y cómo configurar un túnel para permitir el acceso externo al servidor local.

Preparación y Despliegue de AFFiNE

Para este despliegue utilizaremos un entorno basado en Linux (como Ubuntu). El requisito principal es contar con el motor de Docker operativo en el sistema.

1. Inicie instalando Docker Compose en su servidor:

sudo curl -SL "https://github.com/docker/compose/releases/download/v2.24.1/docker-compose-linux-x86_64" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

2. Configure el directorio de trabajo para organizar los archivos del contenedor:

mkdir -p ~/instancia-affine && cd ~/instancia-affine

3. Obtenga los archivos de configuración oficiales (YAML y variables de entorno) desde el repositorio de AFFiNE:

curl -L -o docker-compose.yml https://github.com/toeverything/affine/releases/latest/download/docker-compose.yml
curl -L -o .env https://github.com/toeverything/affine/releases/latest/download/default.env.example

4. Edite el archivo .env para personalizar la seguridad, específicamente la contraseña de la base de datos (DB_PASSWORD):

nano .env

5. Ejecute la orquestación de los contenedores en modo segundo plano:

docker-compose up -d

6. Una vez finalizada la inicialización, el panel de AFFiNE estará disponible localmente en el puerto 3010. Puede verificarlo accediendo a http://[IP-DE-TU-SERVIDOR]:3010 desde su navegador.

Configuración de Acceso Externo mediante Túnel

Para acceder a la herramienta fuera de la red local sin necesidad de una IP pública estática, utilizaremos un cliente de túnel (Luyouxia) que facilita la exposición de servicios internos.

1. Descargue e importe la imagen del cliente de túnel para Docker:

curl -O https://dl.luyouxia.com:8443/v2/lyx-docker-x86_64.tar
docker load -i lyx-docker-x86_64.tar

2. Inicie el contenedor del túnel vinculándolo a su cuenta mediante el código de instalación obtenido previamente en la consola de administración:

docker run --name agente-enlace -it --restart=always --net=host -e code=TU_CODIGO_AQUI luyouxia/lyx

3. Tras obesrvar el mensaje [Device] Logged in, puede cerrar la sesión interactiva con Ctrl + C y reiniciar el contenedor para que opere de forma persistente en segundo plano:

docker start agente-enlace

4. En el panel de gestión del servicio de túnel, proceda a crear un nuevo mapeo de puertos seleccionando el dispositivo que acaba de registrar.

5. Configure el mapeo con los siguientes parámetros:

  • Tipo: Puerto nativo / HTTP.
  • Dirección interna: La dirección IP local del servidor donde corre AFFiNE.
  • Puerto interno: 3010.

6. Al finalizar la creación, el sistema le proporcionará una URL pública. Utilice esta dirección desde culaquier ubicación externa para acceder a su instancia privada de AFFiNE, manteniendo la sincronización de sus datos de forma segura y transparente.

Etiquetas: Docker AFFiNE Self-Hosting Networking Ubuntu

Publicado el 6-5 01:51