Installer webtrees avec Docker
webtrees

Installer webtrees avec Docker

Table des matières

GitHub - NathanVaughn/webtrees-docker: Up-to-date Docker image for webtrees with all the bells and whistles.
Up-to-date Docker image for webtrees with all the bells and whistles. - NathanVaughn/webtrees-docker
Ce tutoriel est une idée de Fabwiss, que je salue au passage !

Vous connaissez probablement des sites qui proposent de créer votre arbre généalogique et voire même de croiser le résultat avec des milliers d'autres. La perceptive est un peu vomitive. Et bien, il existe une application pour ça, où les données restent sous votre contrôle.

Aujourd'hui nous allons parler de webtrees ! Cette application collaborative va vous permettre à vous et votre famille de créer votre fiche personnelle, de la mettre en commun, et ainsi créer vos arbres généalogiques, mais aussi, vous pourrez ajouter des enregistrements isolés de personnes et créer vos arbres à vous.

Faire le tour de cette application demanderait une série de tutoriels, mais vous avez les pistes pour l'installer et commencer doucement à la prendre en main.

💡
Un domaine/sous-domaine est plus que conseillé, ainsi que l'usage d'un serveur mail.

⚡ Caractéristiques

  • Collaboratif : Créez des comptes utilisateurs supplémentaires afin de pouvoir construire votre arbre avec vos proches dans le monde entier.
  • Personnalisable : Configurez les modules de page, les menus, les graphiques, les rapports, etc. Donnez un peu de style à votre site avec différents thèmes - choisissez parmi les six thèmes par défaut ou parcourez les thèmes de la communauté.
  • International : Choisissez parmi plus de 60 langues et de nombreuses conventions de noms de famille, telles que l'ordre des noms, la tradition matrilinéaire des noms, les noms patronymiques ou matronymiques, et bien plus encore.

💾 Installation

Prérequis

Avant de commencer, assurez-vous d’avoir :

Étapes d'Installation

  1. Créez votre compose.yml dans le dossier ou vous comptez installer webtrees :
sudo nano compose.yml
  1. Et collez ça dedans :
services:
  app:
    depends_on:
      - db
    environment:
      PRETTY_URLS: "1"
      HTTPS: "0"
      HTTPS_REDIRECT: "0"
      LANG: "fr-FR"
      BASE_URL: "http://192.168.1.152"
      DB_TYPE: "mysql"
      DB_HOST: "db"
      DB_PORT: "3306"
      DB_USER: "webtrees"
      DB_PASS: "baddbpassword"
      DB_NAME: "webtrees"
      DB_PREFIX: "wt_"
      WT_USER: "admin"
      WT_NAME: "zarev"
      WT_PASS: "password"
      WT_EMAIL: "monmail@mondomaine.com"
      PUID: "1000"
      PGID: "1000"
    image: ghcr.io/nathanvaughn/webtrees:latest
    ports:
      - 8014:80
      # - 443:443
    restart: unless-stopped
    volumes:
      # - ~/certs:/certs/
      - app_data:/var/www/webtrees/data/

  db:
    environment:
      MARIADB_DATABASE: "webtrees"
      MARIADB_USER: "webtrees"
      MARIADB_ROOT_PASSWORD: "badrootpassword"
      MARIADB_PASSWORD: "baddbpassword"
    # See: https://github.com/NathanVaughn/webtrees-docker/issues/145
    image: docker.io/library/mariadb:11
    restart: unless-stopped
    volumes:
      - db_data:/var/lib/mysql

  # db:
  #   environment:
  #     POSTGRES_DB: "webtrees"
  #     POSTGRES_USER: "webtrees"
  #     POSTGRES_PASSWORD: "badpassword"
  #   image: docker.io/library/postgres:latest
  #   restart: unless-stopped
  #   volumes:
  #     - db_data:/var/lib/postgresql/data

volumes:
  db_data:
    driver: local
  app_data:
    driver: local
  • WT_USER: "admin" =>
  • WT_NAME: "zarev" =>
  • WT_PASS: "password" =>
  • WT_EMAIL: "monmail@mondomaine.com" =>
  • - "8014:80" => Changez le port 8014 s'il est déjà utilisé. Vous pouvez également activer le HTTPS.

Pour plus de sécurité il est recommandé de changer au minimum :

  • DB_PASS: "baddbpassword" => Changez baddbpassword par un autre mot de passe.
  • POSTGRES_PASSWORD: "badpassword" => Remplacez baddbpassword par le mot de passe choisi à l'étape précédente.
  1. On va déployer l'application :
docker compose up -d
  1. Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 8181 par défaut :
http://ip:8181/

ou votre domaine :

https://posteria.mondomaine.com

👤 Créer un compte administrateur

Avant de créer le compte administrateur, il faudra terminer le processus d'installation.

Lorsque vous lancez votre instance pour le première fois, vous arriverez ici, cliquez sur suivant :

Cliquez sur suivant également :

Laissez MySQL et cliquez sur suivant :

Remplissons la partie pour se connecter à la base de données :

💡
Si vous avez modifié ces informations dans le compose, changez les valeurs en conséquence.
  • Nom du serveur => db
  • Numéro de port => 3306
  • Identifiant d'accès => webtrees
  • Mot de passe d'accès => baddbpassword
  • Nom de la base de données => webtrees
  • Préfixe des tables => wt_

Cliquez sur suivant.

Créez maintenant votre compte administrateur :

  • Votre nom => Indiquez votre vrai nom.
  • Nom d'utilisateur => Choisissez un nom d'utilisateur pour votre compte administrateur.
  • Mot de passe => Choisissez un mot de passe fort.
  • Adresse courriel => Entrez votre e-mail.

Cliquez sur suivant.

On termine par cette dernière partie :

  • Nom de l'arbre généalogique => Nommez votre arbre généalogique.
  • URL => Indiquez la vraie URL de votre instance.

Terminez en cliquant sur créer.

Vous voici sur votre instance webtrees :


📬 Configurer le serveur mail

Je vous recommande vivement l'usage d'un serveur mail !

Si vous avez votre propre service mail, vous avez les informations nécessaires à entrer ci-dessous.

Mais vous pouvez également utiliser les serveurs mail de Google, Outlook, Infomaniak,.. Jetez un œil ici pour avoir les paramètres 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.

Rendez-vous, en cliquant en haut à droite sur Mes pages, dans la partie Panneau de contrôle :

Ensuite cliquez sur Envoyer un courriel :

Première partie du formulaire :

  • Messages => Sélectionnez le serveur SMTP.
  • Nom de l'expéditeur => Indiquez soit un nom, soit le nom de l'instance, comme vous voulez.
  • Adresse courriel de l'expéditeur => Indiquez l'e-mail de l'expéditeur.

Seconde partie du formulaire :

Adaptez suivant votre configuration.

  • Nom du serveur => Indiquez le nom du serveur SMTP.
  • Numéro de port => Indiquez le port du serveur SMTP.
  • Utiliser un mot de passe => Oui, dans mon cas.
  • Nom d'utilisateur => Indiquez l'e-mail qui va envoyer.
  • Mot de passe => Indiquez le mot de passe de l'e-mail qui va envoyer.
  • SSL requis => STARTTLS dans mon cas.
  • Nom du serveur expéditeur => mail.me. Par exemple, si vous utilisez Gmail, mettez google.com.

Cochez Envoyer un courriel de test en utilisant ces paramètres et cliquez sur enregistrer.

En cas de succès, vous aurez cette confirmation :


👥 Connexion et enregistrement

Vous pouvez laisser les utilisateurs demander un compte s'ils souhaitent rejoindre votre instance.

Toujours dans le panneau de contrôle, partie Site web, cliquez sur Connexion et enregistrement :

Remplissez suivant vos besoins :

  • Texte de bienvenue => Vous avez le choix entre plusieurs textes formatés, ne rien afficher, un texte personnalisé.
  • Permettre aux visiteurs de demander un compte utilisateur : Sur Oui, les utilisateurs pourront demander la création de leur compte.

Cliquez sur enregistrer.


👾 Ajouter un individu

Dans le panneau de contrôle, cliquez sur votre arbre généalogique :

Cliquez sur Individu :

Remplissez ces champs :

Et les suivants :

Cliquez sur enregistrer pour ajouter l'individu.


➕ Associer deux individus

Imaginons que vous vouliez créer un lien entre deux individus.

Dans l'onglet Familles de l'individu à associer :

Ajoutons une épouse à cet individu :

Tapez les premières lettres du nom ou prénom et sélectionnez la personne :

Cliquez sur enregistrer pour terminer.

N'oubliez pas que les changements doivent-être validées :


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.