Intermédiaire ⏱ 30 min de mise en œuvre Mis à jour le 11 août 2026

Héberger Dolibarr : l'ERP et CRM open source français sur votre VPS

Devis, factures, fichier clients, stocks : autant de données sensibles qu'on n'a pas forcément envie de confier à un SaaS étranger. Dolibarr est l'ERP/CRM open source français. Voici comment l'héberger.

Gérer ses devis, ses factures, ses clients et ses stocks sans confier ses données à un SaaS étranger est possible. Dolibarr répond précisément à ce besoin : cet ERP et CRM open source français réunit les fonctions essentielles de gestion commerciale dans une interface accessible aux TPE, PME, artisans et associations.

Contrairement à une solution de facturation en ligne entièrement hébergée par un tiers, une installation de Dolibarr sur votre propre VPS vous laisse le contrôle de l’application, de la base de données et des documents générés. En choisissant un serveur situé en France, le fichier clients et les données de facturation restent hébergés sur le territoire français.

Les VPS TalCloud proposent une infrastructure française avec stockage NVMe, protection Anti-DDoS Netrix et support humain, à partir de 4,99 € par mois. Le dimensionnement reste à valider selon votre usage.

Prérequis pour héberger Dolibarr

Pour déployer Dolibarr avec Docker, prévoyez les éléments suivants :

  • Un VPS Linux disposant de ressources adaptées au nombre d’utilisateurs, au volume de documents et aux modules activés
  • Un accès SSH avec un compte autorisé à utiliser Docker
  • Docker Engine et le module Docker Compose (voir installer Docker sur un VPS)
  • Un nom de domaine ou un sous-domaine, par exemple erp.exemple.fr
  • Un enregistrement DNS de type A, et éventuellement AAAA, pointant vers le VPS
  • Une base MariaDB ou MySQL
  • Un reverse proxy capable de fournir un certificat HTTPS
  • Un espace de sauvegarde distinct du VPS

Le besoin réel dépend fortement de l’usage. Une petite association et une PME utilisant les stocks, les documents PDF et plusieurs comptes simultanés n’auront pas les mêmes contraintes. Surveillez surtout la mémoire, l’espace disque et la croissance du dossier de documents.

Avant le déploiement, vérifiez que Docker fonctionne :

docker version
docker compose version

Créez ensuite un répertoire dédié :

mkdir -p ~/dolibarr
cd ~/dolibarr

Déployer Dolibarr avec Docker Compose

L’image dolibarr/dolibarr permet d’exécuter Dolibarr dans un conteneur. Un second conteneur MariaDB conserve les données structurées : clients, devis, factures, produits, règlements et paramètres.

Créez un fichier .env contenant les secrets et les paramètres propres à l’installation :

DOLI_DB_NAME=dolibarr
DOLI_DB_USER=dolibarr
DOLI_DB_PASSWORD=remplacez_par_un_secret_long
MARIADB_ROOT_PASSWORD=remplacez_par_un_autre_secret
DOLI_ADMIN_LOGIN=admin_dolibarr
DOLI_ADMIN_PASSWORD=remplacez_par_un_troisieme_secret
DOLI_URL_ROOT=https://erp.exemple.fr

Chaque mot de passe doit être long, aléatoire et différent. Protégez ce fichier :

chmod 600 .env

Créez ensuite compose.yaml :

services:
  db:
    image: mariadb:11.4
    restart: unless-stopped
    environment:
      MARIADB_DATABASE: ${DOLI_DB_NAME}
      MARIADB_USER: ${DOLI_DB_USER}
      MARIADB_PASSWORD: ${DOLI_DB_PASSWORD}
      MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}
    volumes:
      - mariadb_data:/var/lib/mysql

  dolibarr:
    image: dolibarr/dolibarr:latest
    restart: unless-stopped
    depends_on:
      - db
    environment:
      DOLI_DB_HOST: db
      DOLI_DB_NAME: ${DOLI_DB_NAME}
      DOLI_DB_USER: ${DOLI_DB_USER}
      DOLI_DB_PASSWORD: ${DOLI_DB_PASSWORD}
      DOLI_ADMIN_LOGIN: ${DOLI_ADMIN_LOGIN}
      DOLI_ADMIN_PASSWORD: ${DOLI_ADMIN_PASSWORD}
      DOLI_URL_ROOT: ${DOLI_URL_ROOT}
      DOLI_INSTALL_AUTO: "1"
    ports:
      - "127.0.0.1:8080:80"
    volumes:
      - dolibarr_documents:/var/www/documents
      - dolibarr_custom:/var/www/html/custom

volumes:
  mariadb_data:
  dolibarr_documents:
  dolibarr_custom:

Trois volumes persistants sont utilisés. mariadb_data conserve la base MariaDB. dolibarr_documents contient notamment les PDF et fichiers déposés dans Dolibarr. dolibarr_custom accueille les modules ou développements personnalisés.

Le port HTTP est lié à 127.0.0.1. Il n’est donc pas directement exposé sur Internet et devra être publié par le reverse proxy.

Validez puis démarrez les services :

docker compose config
docker compose pull
docker compose up -d
docker compose ps

Consultez les journaux si l’application ne démarre pas correctement :

docker compose logs --tail=100 db
docker compose logs --tail=100 dolibarr

Pour une exploitation durable, remplacez progressivement les balises génériques par des versions précises que vous avez testées. Une mise à jour automatique vers une nouvelle version majeure peut introduire une migration de base ou une incompatibilité avec un module externe.

Publier Dolibarr en HTTPS

Dolibarr traite des coordonnées clients, des montants, des factures et parfois des pièces jointes confidentielles. Une publication en HTTP simple exposerait les identifiants et les données échangées. HTTPS est donc indispensable.

Avec Caddy installé sur l’hôte, une configuration minimale dans /etc/caddy/Caddyfile peut prendre cette forme :

erp.exemple.fr {
    reverse_proxy 127.0.0.1:8080
}

Rechargez ensuite Caddy :

sudo caddy validate --config /etc/caddy/Caddyfile
sudo systemctl reload caddy

Caddy peut obtenir et renouveler automatiquement le certificat TLS si le domaine pointe correctement vers le VPS et si les ports 80 et 443 sont accessibles. Nginx Proxy Manager, Traefik ou HAProxy conviennent également.

Le paramètre DOLI_URL_ROOT doit correspondre exactement à l’adresse publique en HTTPS. Évitez de publier directement le port 8080 et ne rendez jamais le port MariaDB accessible depuis Internet.

Effectuer le premier accès

Ouvrez https://erp.exemple.fr dans votre navigateur. Avec l’installation automatique activée, le compte défini par DOLI_ADMIN_LOGIN et DOLI_ADMIN_PASSWORD doit permettre la première connexion.

Si l’écran d’installation apparaît, vérifiez les journaux et les variables transmises au conteneur avant de saisir de nouveaux paramètres. La base doit être joignable sous le nom d’hôte db, et non localhost.

Après la connexion :

  • Remplacez immédiatement tout mot de passe temporaire
  • Configurez la raison sociale, l’adresse, le pays et la devise
  • Ajoutez le logo et les informations légales nécessaires aux documents
  • Créez un compte nominatif pour chaque utilisateur
  • Réservez le compte administrateur aux opérations d’administration
  • Vérifiez l’expéditeur utilisé pour les courriels et les envois de devis

Testez ensuite la création d’un tiers, d’un devis et d’une facture fictive avant d’importer des données réelles.

Activer les modules essentiels

Dolibarr repose sur une architecture modulaire. Il n’est pas nécessaire d’activer toutes les fonctions. Dans la configuration des modules, commencez par les composants correspondant au flux commercial réel.

Le module Tiers structure les entreprises, associations, clients, prospects et fournisseurs. Il constitue la base du CRM. Les contacts peuvent ensuite être rattachés à chaque organisation.

Le module Propositions commerciales permet de créer les devis, de suivre leur statut et de les transformer lorsqu’ils sont acceptés. Le module Factures prend ensuite en charge l’émission des factures, avoirs, échéances et règlements.

Les modules Produits et Services servent à constituer un catalogue réutilisable. Le module Stocks ajoute la gestion des entrepôts et des mouvements. Son activation doit être accompagnée d’une définition claire des règles internes : réception, expédition, inventaire et correction des écarts.

Enfin, le module Agenda centralise les rendez-vous, relances et événements liés aux tiers. Selon les besoins, vous pourrez ensuite évaluer les projets, contrats, interventions, notes de frais ou modules complémentaires.

Limitez les extensions tierces et vérifiez leur compatibilité avant chaque mise à niveau. Un environnement de test séparé est préférable dès que Dolibarr devient essentiel à l’activité.

Vérifier la conformité de la facturation française

Dolibarr est un projet français et intègre de nombreuses fonctions adaptées à la gestion et à la facturation en France. Cela ne signifie pas qu’une installation personnalisée est automatiquement conforme à toutes les obligations applicables à chaque entreprise.

La loi anti-fraude à la TVA, applicable depuis 2018 dans certaines situations, impose notamment des exigences liées à l’inaltérabilité, la sécurisation, la conservation et l’archivage des données d’encaissement. Dolibarr propose des fonctions et modules destinés à répondre à certains besoins de conformité, mais leur simple présence ne constitue pas une certification automatique de votre installation.

La situation dépend notamment du régime fiscal, de l’assujettissement à la TVA, du mode d’encaissement, des modules actifs et des éventuelles modifications du logiciel. La facturation électronique ajoute aussi des obligations distinctes et évolutives.

Avant une utilisation en production, vérifiez votre cas avec votre expert-comptable, consultez la documentation officielle de Dolibarr et contrôlez les justificatifs ou certifications effectivement disponibles pour la version et la configuration utilisées.

Sécuriser, mettre à jour et sauvegarder

Maintenez Docker, le système hôte, Dolibarr, MariaDB et le reverse proxy à jour. Activez un pare-feu, limitez SSH, utilisez des clés plutôt que des mots de passe et protégez les comptes Dolibarr avec des identifiants individuels.

Avant toute mise à jour, sauvegardez la base et les documents. Pour exporter MariaDB depuis le répertoire du projet :

mkdir -p backups
set -a
. ./.env
set +a
docker compose exec -T db mariadb-dump \
  -u"$DOLI_DB_USER" \
  -p"$DOLI_DB_PASSWORD" \
  "$DOLI_DB_NAME" \
  > "backups/dolibarr-$(date +%F).sql"

Sauvegardez également les deux répertoires persistants :

docker compose exec -T dolibarr \
  tar czf - -C /var/www documents html/custom \
  > "backups/dolibarr-files-$(date +%F).tar.gz"

Copiez ces archives vers un stockage externe chiffré. Une sauvegarde laissée uniquement sur le VPS disparaît avec lui en cas de panne grave ou de suppression accidentelle. Notre guide sur la stratégie de sauvegarde d’un serveur détaille cette approche.

Pour mettre les images à jour après sauvegarde :

docker compose pull
docker compose up -d
docker compose ps

Contrôlez ensuite la connexion, la génération d’un PDF, l’accès aux anciens documents et les principaux modules. Planifiez enfin un test de restauration régulier : une sauvegarde n’est réellement utile que si la base MariaDB et les fichiers Dolibarr peuvent être restaurés ensemble.