Installer HumHub avec Docker
HumHub

Installer HumHub avec Docker

Table des matières

GitHub - humhub/humhub: HumHub is an Open Source Enterprise Social Network. Easy to install, intuitive to use and extendable with countless freely available modules.
HumHub is an Open Source Enterprise Social Network. Easy to install, intuitive to use and extendable with countless freely available modules. - humhub/humhub

HumHub est ce qui ressemble le plus à Facebook en solution self-hosted. On peut aussi y trouver un "Messenger" en interne qui permet des discutions en temps réel.

Vous avez également la possibilité de créer des groupes. Comme sur Facebook.

HumHub s'utilise en local ou relié à un domaine, avec ou sans serveur mail. Tout dépend de ce que vous voulez en faire.

HumHub est gratuit et une majorité des modules sont gratuits, mais il en existe des payants. Rien qui ne gâche le plaisir d'utiliser l'application.


HumHub est un logiciel open source intuitif à utiliser et de conception modulaire, utilisé principalement comme réseau social, base de données de connaissances, intranet ou plateforme d'information et de communication.

⚡Caractéristiques

  • Open source.
  • Notifications et résumés par e-mail: Les utilisateurs sont informés des sujets pertinents. Les notifications ainsi que les résumés par e-mail peuvent être configurés individuellement (par exemple la fréquence).
  • Tableau de bord & Flux d'activités: Tous les utilisateurs obtiennent un aperçu personnalisé de toutes les informations nouvelles et importantes.
  • Autorisations individuelles: Avec notre système d'autorisations à plusieurs niveaux, vous pouvez accorder à chaque utilisateur des droits et autorisations spécifiques (administrateur, modérateur, éditeur, autorisation de lecture, etc.).
  • Recherche en texte intégral et filtres: Recherchez du contenu, des espaces, des publications, des utilisateurs et des fichiers avec la recherche en texte intégral intégrée. des filtres personnalisés facilitent également la recherche de contenu spécifique.
  • Gestion de fichiers et collaboration: Gérez des dossiers et des répertoires, créez des galeries, collaborez sur des documents et partagez des fichiers avec d'autres utilisateurs.
  • Outils de réseaux sociaux (interactions): Les utilisateurs peuvent commenter, aimer et partager du contenu, interagir les uns avec les autres, s'envoyer des messages directs, ainsi que suivre et réseauter.
  • Responsive: Connectez-vous à votre réseau sur n'importe quel appareil. HumHub est conçu pour être réactif et prêt pour les appareils mobiles.

L'installation avec serveur mail

  1. Créez votre docker-compose.yml dans le dossier ou vous comptez installer HumHub:
sudo nano docker-compose.yml
  1. Collez ça dedans en prenant soin d'adapter les ports et les volumes suivant votre configuration:
version: '3.1'
services:
  nginx:
    image: docker.io/mriedmann/humhub:stable-nginx
    ports:
      - "8090:80"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost/ping"]
      interval: 30s
      timeout: 10s
      retries: 3
    volumes:
      - "uploads:/var/www/localhost/htdocs/uploads"
      - "assets:/var/www/localhost/htdocs/assets"
      - "modules:/var/www/localhost/htdocs/protected/modules"
      - "themes:/var/www/localhost/htdocs/themes"
  humhub:
    image: docker.io/mriedmann/humhub:stable-phponly
    expose:
      - '9000'
    environment:
      HUMHUB_DB_USER: ${HUMHUB_DB_USER}
      HUMHUB_DB_PASSWORD: ${HUMHUB_DB_PASSWORD}
      HUMHUB_DB_HOST: 'db'
      HUMHUB_DB_NAME: 'humhub'
      HUMHUB_AUTO_INSTALL: 1
      # HUMHUB_DEBUG: 1 # you can currently not use debug in prod 
      HUMHUB_PROTO: 'https'
      HUMHUB_HOST: 'humhub.belginux.com'
      # Compte admin      
      HUMHUB_ADMIN_LOGIN: 'admin'   
      HUMHUB_ADMIN_EMAIL: 'zarev@belginux.com   
      HUMHUB_ADMIN_PASSWORD: 'humhub'
      # Taille fichier max
      PHP_UPLOAD_MAX_FILESIZE: 66m
      PHP_POST_MAX_SIZE: 66m
      NGINX_CLIENT_MAX_BODY_SIZE: 66m
      # Configuration serveur mail
      HUMHUB_MAILER_SYSTEM_EMAIL_ADDRESS: 'votremail@gmail.com'
      HUMHUB_MAILER_SYSTEM_EMAIL_NAME: 'zarev'
      HUMHUB_MAILER_TRANSPORT_TYPE: 'smtp'
      HUMHUB_MAILER_HOSTNAME: 'smtp.gmail.com'
      HUMHUB_MAILER_PORT: 587
      HUMHUB_MAILER_USERNAME: 'votremail@gmail.com'
      HUMHUB_MAILER_PASSWORD: 'votre_mot_de_passe_application_tierce'
      #HUMHUB_MAILER_ENCRYPTION:
      HUMHUB_MAILER_ALLOW_SELF_SIGNED_CERTS: 0
      # Cache Config
      HUMHUB_CACHE_EXPIRE_TIME: 3600
      HUMHUB_CACHE_CLASS: yii\redis\Cache
      HUMHUB_QUEUE_CLASS: humhub\modules\queue\driver\Redis
      HUMHUB_REDIS_HOSTNAME: redis
      HUMHUB_REDIS_PORT: 6379
      HUMHUB_REDIS_PASSWORD: redis_password
    volumes:
      - "uploads:/var/www/localhost/htdocs/uploads"
      - "assets:/var/www/localhost/htdocs/assets"
      - "modules:/var/www/localhost/htdocs/protected/modules"
      - "themes:/var/www/localhost/htdocs/themes"
#     - "${HUMHUB_VOLUME_CONFIG}:/var/www/localhost/htdocs/protected/config"
    healthcheck:
      test: ["CMD", "php-fpm-healthcheck"]
      interval: 30s
      timeout: 10s
      retries: 3
  db:
    image: mariadb:10.4
    environment:
      MYSQL_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}
      MYSQL_DATABASE: 'humhub'
      MYSQL_USER: ${HUMHUB_DB_USER}
      MYSQL_PASSWORD: ${HUMHUB_DB_PASSWORD}
    volumes:
      - "mysql:/var/lib/mysql"
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "--silent"]
      interval: 30s
      timeout: 10s
      retries: 3
  mailer:
    image: sj26/mailcatcher:latest
    restart: always
    expose:
      - 1025
    ports:
      - "1080:1080"
  redis:
    image: redis:5.0-alpine
    expose:
      - '6379'
#    volumes:
#      - /srv/humhub/redis:/data
    environment:
      - REDIS_PASSWORD=redis_password
      #- ALLOW_EMPTY_PASSWORD=yes
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
volumes:
  uploads: {}
  assets: {}
  modules: {}
  themes: {}
  mysql: {}

Veillez à changer:

  • HUMHUB_HOST: humhub.beglinux.com => Il est important de bien renseigner le domaine du site, sans http/https. Si c'est en local uniquement, vous pouvez indiquer l'IP locale du serveur.
  • HUMHUB_ADMIN_EMAIL: 'zarev@belginux.com => Entrez votre adresse mail à vous.

Réglez ici la taille maximale autorisée en upload, par exemple 66 Mo:

  • PHP_UPLOAD_MAX_FILESIZE: 66m => Adaptez selon vos besoins.
  • PHP_POST_MAX_SIZE: 66m => Adaptez selon vos besoins.
  • NGINX_CLIENT_MAX_BODY_SIZE: 66m => Adaptez selon vos besoins.

Pour le serveur mail, si vous avez le vôtre, indiquez les informations demandées.
Si vous voulez utiliser votre adresse Gmail (ou Outlook,...), il faudra un mot de passe pour application tierce, c'est expliqué dans ce tutoriel:

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.
  • HUMHUB_MAILER_SYSTEM_EMAIL_ADDRESS: 'votremail@gmail.com' => Indiquez l'adresse complète de votre Gmail.
  • HUMHUB_MAILER_SYSTEM_EMAIL_NAME: 'zarev' => Indiquez le nom ou le pseudo de l'expéditeur.
  • HUMHUB_MAILER_TRANSPORT_TYPE: 'smtp' => Ne rien toucher.
  • HUMHUB_MAILER_HOSTNAME: 'smt.gmail.com' => Ne rien toucher sauf si vous utilisez un autre que Gmail.
  • HUMHUB_MAILER_PORT: 587 => Ne rien toucher.
  • HUMHUB_MAILER_USERNAME: 'votremail@gmail.com' => indiquez l'adresse complète de votre Gmail.
  • HUMHUB_MAILER_PASSWORD: 'votre_mot_de_passe_application_tierce' => Indiquez le mot de passe reçu à l'étape précédente, supprimez les espaces se trouvant dans le mot de passe.
  1. Créez votre fichier .env:
sudo nano .env
  1. Collez ça dedans:
HUMHUB_DB_PASSWORD="un_mot_de_passe_fort"
HUMHUB_DB_USER=humhub
MARIADB_ROOT_PASSWORD="un_autre_mot_de_passe_fort"

Veillez à bien remplir:

  • HUMHUB_DB_PASSWORD="un_mot_de_passe_fort" => Remplacez un_mot_de_passe_fort par... Un mot de passe fort!
  • MARIADB_ROOT_PASSWORD="un_autre_mot_de_passe_fort" => Remplacez un_autre_mot_de_passe_fort par... Un autre mot de passe fort!
  1. On installe l'application:
docker-compose up -d

ou avec docker-compose V2:

docker compose up -d
  1. Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 8090 par défaut:
http://ip:8090/

ou votre domaine:

https://mondomaine.com

Première connexion

Lors de votre première connexion, et vu qu'on l'a précisé dans le docker-compose, il faudra entrer le compte administrateur par défaut:

  • Identifiant ou e-mail => admin
  • Mot de passe => humhub

Terminez en cliquant sur Se connecter.


Choisir la langue française par défaut

Cliquez en haut à droite sur 👤 et choisissez Administration:

Settings:

Et enfin dans General, choisissez la langue de votre choix:

On clique sur Save pour terminer:


Modifier le compte par défaut

Pour une question de sécurité, nous allons changer le compte par défaut.

Changer le nom d'utilisateur

Cliquez en haut à droite sur 👤 et sur Paramètres du compte:

Cliquez sur Changer le nom d'utilisateur, entrez le mot de passe actuel dans le premier champ, humhub et le nouveau nom d'utilisateur souhaité. Cliquez sur Enregistrer quand vous avez terminé.

Changer le mot de passe

Toujours dans Paramètres du compte, cliquez sur l'onglet Modifier le mot de passe, entrez le mot de passe actuel, admin, puis le nouveau mot de passe dans le second champ et enfin, confirmez le nouveau mot de passe. Validez le tout en cliquant sur Enregistrer:


Personnaliser son profil

Dans Paramètres du compte, Général, vous pouvez changer le Prénom, le Nom par défaut et le Titre. N'hésitez pas à faire le tour des autres options:

Cliquez sur Enregistrer le profil quand vous êtes satisfait:


Personnaliser l'image de profil et de fond

De base c'est pas très sexy. Cliquez sur le coin inférieur droit de l'image de profil, et indiquez-lui une photo:

C'est déjà un peu mieux:

Maintenant une image de fond. Pareil, cliquez sur l'icône pour envoyer votre image:

Ce qui donne:


Réglez quelques paramètres du site

Nous allons configurer quelques paramètres de base du site mais élémentaires.

Cliquez en haut à droite sur 👤 et sélectionnez Administration:

Cliquez sur Paramètre dans le menu de gauche et dans l'onglet Général il va falloir modifier quelques points:

  • Nom de de l'application => Donnez un petit nom à votre instance HumHub.
  • URL de base => Indiquez soit l'IP locale du service ou son nom de domaine.
  • Langue par défaut => Choisissez votre langue préférée.
  • Fuseau horaire par défaut => Choisissez votre fuseau horaire.

Cliquez sur Enregistrer quand vous avez terminé.


Ajouter un module

Dans sa version Community Edition, donc gratuite, HumHub propose des modules gratuits intéressants comme par exemple la messagerie en temps réel.

Rendez-vous partie Administration, Modules:

Cliquez sur Installer Messenger:

N'oubliez pas de l'activer en cliquant sur Activer:

Il est bien installé et on peut constater l'apparition du bouton Configurer:

Il y a bien la petite enveloppe à côté des notifications, pour les messages. Tous vos membres pourront discuter en temps réel.

Bien qu’intéressante, la discussion fût courte:

N'hésitez pas à explorer les autres modules!


S’inscrire

Sur la page d'accueil, quand vous n'avez pas de compte utilisateur, vous voyez le bloc d'identification et celui pour s'inscrire:

Dans le bloc Inscription, entrez votre adresse e-mail, entrez les caractères affichés et cliquez sur S'enregistrer:

Une fois l'inscription terminée, cliquez sur Retour à l'accueil:

Partie boîte mail, vous ouvrez le mail reçu après votre inscription, vous cliquez sur S'inscrire:

Cela vous renvoie vers le site et vous pouvez créer votre compte:


Modifier l'e-mail

Si pour une raison ou l'autre vous deviez changer votre adresse e-mail, dans Paramètres du compte, rendez-vous sur l'onglet Modifier l'e-mail, entrez votre mot de passe dans le premier champ et l’e-mail souhaité dans le second champ.

Quand c'est terminé, cliquez sur Enregistrer:

Un mail sera envoyé sur la nouvelle adresse afin que vous confirmiez cette modification:


Publier un message

De votre profil, vous pouvez poster un message:

Mon premier message avec une photo, je clic sur Publier,

Et voilà:


Créer un espace

Les espaces, c'est comme des groupes que l'on peut rejoindre.

Cliquez en haut à gauche sur Mes espaces, entrez le nom du groupe que vous allez créer et cliquez sur Créer un espace quand vous avez fait votre choix:

Complétez la fiche et cliquez sur Suivant:

Dans la partie Espaces, le nouvel espace Docker:

Une fois dans le groupe, vous pourrez inviter d'autres personnes avec le bouton Inviter:

Soit vous l'utilisateur est déjà inscrit et vous le trouverez dans la recherche, soit vous pouvez l'inviter par mail ou encore par un lien:

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.

Vous pourriez aussi aimer

#ouvrir un lien dans une nouvelle fenêtre