Photo by Patrick Perkins / Unsplash

Joplin : le meilleur gestionnaire de notes/to-do ?

Docker 13 févr. 2022

Gratuit, open-source, auto-hébergeable (sic!), clients desktop Windows/MacOS/Linux, clients Android/iOS, émulation Web (le client Linux dans une page Web), c'est plutôt joli. Bref, j'ai toujours eu la flemme d'y passer, c'est fait.

Joplin, dont le nom ne vient de Janis mais d'un pianiste, est une application de création/partage de notes, documents et to-dos notamment en markdown. On peut travailler à plusieurs sur le même documents et supporte le E2E (chiffrement de bout en bout).

La synchronisation entre les différents clients peut se faire via leur offre Cloud ou en hébergeant soi-même le serveur ou encore via des systèmes classiques tels que Nextcloud, Webdav, OneDrive, S3, Dropbox...

Voici les liens à connaître/visiter :
- Le site de Joplin,
- Github,
- Les plugins, que j'ai pas encore pris le temps d'explorer en détail
- L'aide,
- Projet annexe de "Web-Viewer" qui s'installe en dur sur Linux (non testé)
- Ce que j'appelle l'émulation Web : un Docker qui héberge le client desktop Linux avec VNC (et ça reste léger)

Installation via Docker

version: '3'

services:
    db:
        image: postgres:13
        container_name : joplinpostgres
        volumes:
            - /home/aerya/docker/joplin/postgres:/var/lib/postgresql/data
        ports:
            - "5432:5432"
        restart: always
        environment:
            - POSTGRES_PASSWORD=xxx
            - POSTGRES_USER=xxx
            - POSTGRES_DB=xxx
    app:
        image: joplin/server:latest
        container_name : joplin
        depends_on:
            - db
        ports:
            - "22300:22300"
        restart: always
        environment:
            - APP_PORT=22300
            - APP_BASE_URL=https://notes.upandclear.org
            - DB_CLIENT=pg
            - POSTGRES_PASSWORD=xxx
            - POSTGRES_DATABASE=xxx
            - POSTGRES_USER=xxx
            - POSTGRES_PORT=5432
            - POSTGRES_HOST=db
        labels:
            - com.centurylinklabs.watchtower.enable=true

Il n'y a qu'un volume à monter, pour la base de données et attention à bien mettre l'APP_BASE_URL. Soit une URL soit sous la forme http:/IP:PORT (port 22300 par défaut).

Une fois le serveur installé, s'y connecter avec admin@localhost et admin en mot de passe. On est ensuite invité à changer le mot de passe et télécharger un client pour pouvoir utiliser Joplin.

Dans le client desktop, aller dans le menu Tools/Options pour le passer en VF notamment. Puis Synchronisation et sélectionner Joplin Server (BETA atm).

Sur mobile (Android du moins) le menu est en haut à gauche puis Configuration en bas.

J'ai pas encore fait le tour des plugins, j'y reviendrai si je découvre un truc hors du commun.

Quant à la version Web, comme je le mentionnais au début, elle doit s'installer en dur sur le serveur. Et je ne veux pas. Je lui préfère la pseudo version Web qui consiste en un Docker avec VNC et le client desktop Linux. C'est léger et propre.

J'en ai besoin pour me l'ajouter comme service dans Ferdi.

docker run -d \
--name=joplinwebvnc \
--restart always \
-p 5800:5800 \
-e VNC_PASSWORD=xxx \
-v /home/aerya/docker/joplin/webvnc:/app/.config \
--label=com.centurylinklabs.watchtower.enable=true \
acaranta/docker-joplin

On s'y connecte via IP:5800 (ou une URL, c'est plus sympa, faudra que j'y pense) et son mot de passe VNC

Mots clés