Installer DocuSeal avec Docker
DocuSeal

Installer DocuSeal avec Docker

Table des matières

GitHub - docusealco/docuseal: Open source DocuSign alternative. Create, fill, and sign digital documents ✍️
Open source DocuSign alternative. Create, fill, and sign digital documents ✍️ - docusealco/docuseal

Vous voyez quand on vous livre un colis et qu'on vous fait signer un document (sur écran tactile)? Et bien vous avez en essence, ce que DocuSeal permet de faire.

Même si l'application est en anglais, la signature, donc côté client, est disponible en 13 langues. Si vous n'êtes pas pote avec l'anglais, le tutoriel devrait vous aider pour le reste.

Mais rien de bien méchant, c'est bien foutu!

Aujourd'hui, on va parler de DocuSeal, une application permettant la signature de documents de manière sécurisée. Je me suis amusé à me faire signer des documents sur smartphone, c'est vraiment classe!

Vous pouvez également ajouter d'autres options comme des cases à cocher. Mais pas que:

Il y a une version pro et une version gratuite, la version gratuite est généreuse et conviendra pour la plupart.

💡
Il faut obligatoirement lier l'application à un domaine, sécurité oblige.

DocuSeal est une plateforme open source qui permet une signature et un traitement de documents numériques sécurisés et efficaces. Créez des formulaires PDF pour les remplir et les signer en ligne sur n'importe quel appareil grâce à un outil Web facile à utiliser et optimisé pour les mobiles.

⚡Caractéristiques

  • Générateur de champs de formulaire PDF (WYSIWYG).
  • 12 types de champs disponibles (Signature, Date, Fichier, Case à cocher etc.).
  • Plusieurs soumissionnaires par document.
  • E-mails automatisés via SMTP.
  • Stockage de fichiers sur disque ou AWS S3, Google Storage, Azure Cloud.
  • Signature électronique PDF automatique.
  • Vérification de la signature PDF.
  • Gestion des utilisateurs.
  • Optimisé pour les mobiles.
  • Signature disponible en 13 langues.
  • API et Webhooks pour les intégrations.
  • Facile à déployer en quelques minutes.

L'installation sans Caddy

  1. Créez votre docker-compose.yml dans le dossier ou vous comptez installer DocSeal:
sudo nano docker-compose.yml
  1. Collez ça dedans en prenant soin d'adapter les ports et les volumes suivant votre configuration:
version: '3'

services:
  app:
    depends_on:
      postgres:
        condition: service_healthy
    image: docuseal/docuseal:latest
    ports:
      - 3900:3000
    volumes:
      - ./docuseal:/data/docuseal
    environment:
      - FORCE_SSL=https://mondomaine.com
      - DATABASE_URL=postgresql://postgres:postgres@postgres:5432/docuseal

  postgres:
    image: postgres:15
    volumes:
      - './pg_data:/var/lib/postgresql/data'
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      POSTGRES_DB: docuseal
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres"]
      interval: 5s
      timeout: 5s
      retries: 5

Veillez à modifier cette ligne:

  • FORCE_SSL=https://mondomaine.com => Changez mondomaine.com par votre domaine.
  1. On installe l'application:
docker-compose up -d

ou avec docker-compose V2:

docker compose up -d
  1. Rendez-vous sur votre domaine:
https://mondomaine.com
💡
Si vous utilisez Cosmos Cloud, voici l'adresse à proxy pour relier DocuSeal au domaine/sous-domaine de votre choix:
http://192.168.1.152:3900/

L'installation avec Caddy

  • Rendez-vous dans le dossier où vous voulez installer l'application.
  • Assurez-vous que votre DNS pointe vers le serveur pour émettre automatiquement des certificats SSL avec Caddy.
  1. Lancez cette commande qui va télécharger le docker compose:
curl https://raw.githubusercontent.com/docusealco/docuseal/master/docker-compose.yml > docker-compose.yml
  1. Lancez cette commande en prenant soin de remplacer mondomaine.com par votre domaine:
sudo HOST=mondomaine.com docker compose up -d
  1. Rendez-vous sur votre domaine:
https://mondomaine.com

Création du compte administrateur

Lors de votre première connexion, il faudra créer votre compte administrateur:

Veillez à remplir ces paramètres:

  • First name => Entrez votre prénom.
  • Last name => Entrez votre nom.
  • Email => Entrez votre adresse e-mail.
  • Company name => Entrez le nom de votre compagnie, société,...
  • Password => Choisissez un mot de passe fort.
  • App URL => Cette option sera remplie automatiquement.

Validez en cliquant sur SUBMIT.

Cliquez sur Skip sauf si vous souhaitez la newsletters des dev:

Vous voici sur le tableau de bord!


Configurer le serveur mail

Rendez-vous dans Settings en haut à droite, ensuite cliquez sur Email dans la colonne de gauche:

Remplissez les informations demandées, si vous avez votre propre serveur mail, entrez les informations correspondantes.

Si vous voulez utiliser Gmail ou encore Outlook, Infomaniak,...

Rendez-vous ici pour les informations nécessaires:

Configurer le SMTP pour envoyer un mail avec une application Docker
Tutoriel pour configurer le SMTP afin d’envoyer un mail à partir de vos applications self-hosted.

Quand tout est configuré, cliquez sur SAVE pour valider la configuration.

Si tout est bien configuré, vous allez recevoir un mail pour le confirmer:


Franciser les formulaires d'e-mail

Si cela peut vous-être utile, il est possible de franciser les formulaires d'e-mail quand vous voulez envoyer par mail les documents à signer.

Rendez-vous sur Settings en haut à droite et ensuite dans Personnalization dans la colonne de gauche:

Pour vous faciliter la vie, voici les templates francisés, il n'y aura plus qu'à copier/coller dans les champs correspondants. Ce qui est entre {{xxxxxx}} doit absolument rester en anglais.

  • Partie Email template

Signature Request Email => E-mail de demande de signature

Subject:

Vous êtes invité à soumettre un formulaire

Body:

Salut,

Vous avez été invité à soumettre le formulaire "{{template.name}}".

{{submitter.link}}

Veuillez nous contacter en répondant à cet e-mail si vous ne l'avez pas demandé.

Merci,
{{account.name}}

Cliquez sur SAVE.

Form Completed Email => E-mail de formulaire complété

Subject:

{{template.name}} a été complétée par {{submission.submitters}}

Body:

Bonjour,

"{{template.name}}" le formulaire a été complété par {{submission.submitters}}

{{submission.link}}

Cliquez sur SAVE.

Documents Copy Email => Documents Copie E-mail

Subject:

Votre copie de document

Body:

Bonjour à vous,

Veuillez vérifier la copie de votre "{{template.name}}" dans les pièces jointes du courrier électronique.
Vous pouvez également télécharger votre exemplaire en utilisant:

{{documents.link}}

Merci,
{{account.name}}

Cliquez sur SAVE.

C'est terminé!


Créer son document à signer

Maintenant que votre serveur mail est configuré, que vous avez francisé les templates, et bien que pensez-vous d'envoyer votre premier document à signer?

Sur le tableau de bord, cliquez sur Upload New Document et sélectionner le pdf souhaité:

Imaginons que... Enfin, vous voyez:

Cliquez dans la colonne de droite sur Signature et tracez un rectangle, par exemple, avec votre souris. Vous pouvez éditer le champ à gauche de Required:

Quand vous êtes satisfait, cliquez sur SAVE en haut à droite.

Imaginons que je veuille envoyer ça à mon généreux donateur volontaire, cliquez sur SEND TO RECIPIENTS:

Entrez l'e-mail de la personne et cliquez sur ADD RECIPIENTS:

Vous avez la confirmation que le mail est bien envoyé:

Côté boîte mail:

Et maintenant j'ouvre le document de mon smartphone:

Je le signe avec mon doigt:

Je termine en cliquant sur ENVOYER, petite explosion de confettis:

Vous avez les options ENVOYER UNE COPIE PAR E-MAIL ou vous pouvez télécharger directement le document en cliquant sur TÉLÉCHARGER.

Et maintenant il me reste à attendre ce fameux rein...


Notifications

Vous pouvez recevoir une notification quand votre destinataire à bien signé le document, rendez-vous dans Settings en haut à droite et remplissez comme bon vous semble la partie Completed documents BCC address:

Cliquez sur SAVE pour terminer.

zarev

->.<-
🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.