Rayon Organisation

Joplin Server

Vos notes Joplin synchronisées chez vous.

Ajouter à mon serveurGénérer le docker-composeDocumentation officielle

À quoi ça sert ?

Joplin est une application de notes très complète (Markdown, carnets, tags, pièces jointes, chiffrement). Joplin Server synchronise vos notes entre vos appareils, plus rapidement et plus simplement qu'avec Nextcloud ou Dropbox.

Pour qui ?

Les utilisateurs de Joplin, ou ceux qui cherchent une vraie alternative à Evernote.

Bon à savoir

Joplin Server ne répond qu’à l’adresse indiquée dans APP_BASE_URL (sinon : « Invalid origin », erreur 404). Utilisez toujours cette adresse, jamais IP:port.

Après l'installation

  1. Connectez-vous avec admin@localhost / admin, puis changez immédiatement l’email et le mot de passe.
  2. Dans l’application Joplin : Synchronisation → Joplin Server, avec l’adresse de votre serveur.

Le docker-compose

Exemple derrière Traefik, avec une explication sur chaque ligne. Pour l'adapter à votre cas (Nginx Proxy Manager, port local…), utilisez le générateur.

# docker-compose.yml : Joplin Server
# Ce fichier décrit les « conteneurs » à lancer : chaque conteneur est une petite
# boîte isolée qui contient un programme. Lancez-le avec : docker compose up -d
services:
  # Conteneur principal : l'application Joplin Server
  app:
    # Le programme à télécharger (l'« image »), avec sa version
    image: joplin/server:latest
    container_name: joplin
    # Redémarre tout seul après une panne ou un redémarrage du serveur
    restart: unless-stopped
    # Démarre ces conteneurs avant celui-ci
    depends_on:
      - db
    # Réglages de l'application. Les valeurs ${...} viennent du fichier .env
    environment:
      APP_PORT: "22300"
      APP_BASE_URL: https://joplin.mondomaine.fr
      DB_CLIENT: pg
      POSTGRES_HOST: db
      POSTGRES_PORT: "5432"
      POSTGRES_DATABASE: joplin
      POSTGRES_USER: joplin
      POSTGRES_PASSWORD: "${DB_PASSWORD}"
      TZ: Europe/Paris
    # Réseau partagé avec le reverse proxy pour qu'il puisse joindre l'application
    networks:
      - traefik
      - default
    # Indique à Traefik de publier l'application sur https://joplin.mondomaine.fr avec un certificat HTTPS
    labels:
      - traefik.enable=true
      - traefik.http.routers.joplin.rule=Host(`joplin.mondomaine.fr`)
      - traefik.http.routers.joplin.entrypoints=websecure
      - traefik.http.routers.joplin.tls.certresolver=letsencrypt
      - traefik.http.services.joplin.loadbalancer.server.port=22300
      - traefik.docker.network=traefik

  # Conteneur annexe « db » (utilisé par l'application, pas accessible de l'extérieur)
  db:
    # Le programme à télécharger (l'« image »), avec sa version
    image: postgres:17-alpine
    container_name: joplin-db
    # Redémarre tout seul après une panne ou un redémarrage du serveur
    restart: unless-stopped
    # Réglages de l'application. Les valeurs ${...} viennent du fichier .env
    environment:
      POSTGRES_DB: joplin
      POSTGRES_USER: joplin
      POSTGRES_PASSWORD: "${DB_PASSWORD}"
    # Dossiers du serveur partagés avec le conteneur (dossier_serveur:dossier_conteneur).
    # Vos données sont stockées ici : ce sont ces dossiers qu'il faut sauvegarder.
    volumes:
      - ./db:/var/lib/postgresql/data
# Le réseau du reverse proxy existe déjà : on s'y raccroche

networks:
  traefik:
    external: true