• 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Joplin en docker con BBDD PostgreSQL
#1
Hola

Aunque en un hilo anterior se expuso como usar Joplin apoyándonos de una instalación de Nextcloud, no todo el mundo tiene porqué tener este requerimiento.

En este hilo, voy a describir como instalar Joplin en un docker y que use una BBDD de PostgreSQL.

Se puede hacer sin base de datos postgreSQL, y Joplin usará un sqllite integrada. Dejo aquí en enlace. Pero para muchos datos y usuarios, conviene usar postgreSQL.

Nos apoyaremos en dos Docker previos que son:
  • Docker de PostgreSQL como BBDD, lo cual veremos que nos proporciona mucha mas velocidad en las sincronizaciones de las notas, que hacerlo por webdav.
  • Docker de PgAdmin para la creación y primera gestión de usuario y permisos de una BBDD limpia que va a ser usada por Joplin.
Si no tenemos instalado postgreSQL, nos podemos evitar el uso de PgAdmin ya que en la cadena de creación de PostgreSQL podemos indicar la base de datos y usuarios a usar por Joplin.

Si ya tenemos instalada postgreSQL con bases de datos de otros programas, entonces si debemos usar PgAdmin (es un entono gráfico) para crear la base de datos y el usuario que usará Joplin.

Vamos a suponer que ya usamos postgreSQL y que usamos PgAdmin.
Vamos a la web de PgAdmin y nos identificamos con el usuario u clave que definimos en su creación.
   

En mi caso ya usaba esa BBDD para otros contenidos y me muestra que tengo mas de una base (NextCloud es una de ellas Wink ).
   

   

Creamos un nuevo usuario llamado "joplin" desde los menús 
   

Y le asignamos permisos 
   

Luego creamos una nueva base de datos llamada "joplin" desde los menús
   

Damos nombre y asignamos usuario
   

Y en el apartado de seguridad damos permisos al usuario "joplin"
   

Tras guardarlo, si volvemos a revisar, veremos que la definición del usuario ha quedado así
   

Bueno, con esto ya tenemos hecho lo necesario para que cuando se inicie el docker de Joplin se encuentre la base de datos y pueda construir sus tablas dentro.


Ahora vamos con la creación en si del docker de Joplin.

Evidentemente tenemos la idea de que Joplin pueda ser usado desde nuestro terminal móvil u otros equipos informático desde internet y esto nos obliga a tener algún tipo de dns y/o ddns definido para que joplin pueda ser accedido desde una dirección tipo "https://joplin.midominio.com"

También vamos a tener un almacenamiento persistente del contenedor en una ruta tipo "/share/DockerData/joplin"
En esa carpeta vamos a crear un archivo llamado ".env" con el siguiente contenido
Código:
MAX_TIME_DRIFT=0
APP_BASE_URL=https://joplin.midominio.com
APP_PORT=22300

Luego desde la consola de la nas, estando ubicados en la ruta "/share/DockerData/joplin" escribimos el comando de creación del contenedor "joplin-postgresql":
Código:
docker run -d  -p 192.168.1.7:22300:22300 --network=Dockers --restart always --name="joplin-postgresql" --env-file .env -v /share/DockerData/joplin:/var/lib/postgresql/data -e DB_CLIENT=pg -e POSTGRES_HOST=postgresql -e POSTGRES_PORT=5432 -e POSTGRES_DB=joplin -e POSTGRES_USER=joplin -e POSTGRES_PASSWORD=ClaveDePostgresql  joplin/server:latest

En el comando defino los siguientes parámetros:
  • -uso la ip local de la nas "192.168.1.70"
  • -puerto en la nas el 22300 e interiormente en el docker el 22300
  • -uso la red Dockers en la que ya estaba integrado el servidor de postgreSQL. Si no se hizo en el contenedor de postgreSQL, tampoco hay que hacerlo aquí.
  • -indico cual es el nombre del contenedor de postgreSQL con "-e POSTGRES_HOST=postgresql"
  • -con "-e POSTGRES_DB=joplin", indico cual es el nombre de la base de datos, lo hicimos desde PgAdmin
  • -con "-e POSTGRES_USER=joplin" y "-e POSTGRES_PASSWORD=ClaveDePostgresql" , indico cual es el nombre del usuario de la base de datos, lo hicimos desde PgAdmin
Con el primer arranque hemos de esperar unos instantes para la preparación de la base de datos.

Y luego ya podremos acceder a la web de gestión de la joplin yendo a nuestro navegador local a la dirección "https://joplin.midominio.com"
   

El primer usuario y clave por defecto son admin@localhost  / admin.
Ni que decir tiene que debe cambiarse y crearnos uno o varios para mas gente (no sólo nosotros).

Luego en nuestros clientes de móvil o PC de Joplin hemos de dar tres parámetros:
  1. la dirección web "https://joplin.midominio.com"
  2. nuestra dirección de correo de usuario
  3. nuestra clave
Pantalla del cliente de Windows
   

Joplin tiene este tipo de conexión en versión Beta, pero no he notado ningún extraño.

Recordad que siempre tenemos que tener algún tipo de copia de seguridad de los datos, y desde el cliente de Windows se pueden hacer sin problemas.
   

Bueno, creo que esto es todo y no me dejo nada del proceso de Joplin usando una BBDD postgreSQL.

Como siempre, si veis algún tipo de error o errata, enviadme un mensaje privado para que corregirlo.
La información mas actualizada sobre este contenedor la podéis encontrar en DockerHub.
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Responder




Usuarios navegando en este tema: 1 invitado(s)