Dolibarr + OVH : CSV en 30 jours

Dolibarr + OVH : Exploiter le CSV en 30 jours
Guide complet pour importer, exporter et automatiser les données de votre ERP open‑source sur l’infrastructure OVH.


1. Pourquoi associer Dolibarr à OVH ?

Avantage Ce que cela apporte à votre projet
Scalabilité Vous pouvez passer d’un petit serveur VPS à un cloud dédié sans modifier votre code.
Performance SSD Les disques NVMe d’OVH réduisent les temps d’I/O, essentiels pour les exports CSV massifs.
Sécurité officielle Pare‑feu, DDoS‑Protection et certificats TLS gratuits via Let’s Encrypt.
Facilité de déploiement Images Docker et ISO pré‑configurées qui s’intègrent parfaitement à l’API OVH.
Coût maîtrisé Tarifs à la demande, facturation horaire, idéal pour un projet de 30 jours.

En résumé, OVH vous fournit la plateforme d’infrastructure ; Dolibarr fournit la couche applicative : l’union crée un ERP ultra‑flexible, prêt à manipuler des fichiers CSV depuis et vers le cloud.


2. Chronologie sur 30 jours : feuille de route

Jour Action Détails clés
1‑2 Création du compte OVH Sous‑cription à un VPS (ex. KS‑1), activation du firewall et du Load Balancer.
3‑4 Déploiement de Dolibarr – Option 1 : Docker Compose (officiel).
– Option 2 : Image Docker “dolibarr” + MariaDB.
5‑6 Configuration SSL Utilisation de certbot et de l’API OVH pour obtenir un certificat gratuit.
7 Ouverture du port 80/443 Mise en place d’un reverse‑proxy Nginx (ou Caddy) si besoin.
8‑10 Création du premier module Activation des modules “Factures” et “Clients” depuis l’admin.
11‑13 Mise en place du connexion DB MariaDB 10.11, paramètres max_allowed_packet > 64 M pour gros CSV.
14‑16 Import CSV test Script PHP import_csv.php fourni par Dolibarr, tests avec 5 k lignes.
17‑19 Export CSV automatisé Scheduler cron (ex: 0 2 * * * php /var/www/html/cron/export.php) pour générer le fichier chaque nuit.
20‑22 Intégration à un CRM externe Utilisation de l’API REST de Dolibarr + endpoint OVH Object Storage pour stocker les CSV.
23‑24 Sauvegarde & rétention Snapshots quotidiens via le API IS / Buckets, rétention 7 jours.
25‑27 Audit sécurité Scan de vulnérabilités (OpenVAS), désactivation des modules inutiles.
28‑30 Documentation & formation Rédaction d’un manuel “Import/Export CSV en 30 jours”, formation interne de 30 min.
Jour 30 Livraison du projet Environnement pleinement opérationnel, prêt pour un usage productionnel.


3. Guide d’installation pas à pas

3.1. Provisionnement de la VM

# 1️⃣. Créez une instance VPS (2 cœurs, 4 Go RAM, 80 Go SSD) via le Cloud Engine d’OVH
# 2️⃣. Choisissez l’image Ubuntu 22.04 LTS
# 3️⃣. Ajoutez un firewall : bloquez tout sauf SSH (22) et HTTP/HTTPS (80,443)

3.2. Installation de Docker & Docker‑Compose

sudo apt update && sudo apt install -y docker.io docker-compose
sudo systemctl enable --now docker
sudo usermod -aG docker $USER

3.3. Déploiement de Dolibarr avec Docker‑Compose

# docker-compose.yml
version: "3.8"
services:
db:
image: mariadb:10.11
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: $DB_ROOT_PWD
MYSQL_DATABASE: dolibarr
MYSQL_USER: dolibarr
MYSQL_PASSWORD: $DB_USER_PWD
volumes:
- mariadb-data:/var/lib/mysql
command: --max_allowed_packet=256M # pour les gros CSV
app:
image: dolibarr/dolibarr:latest
restart: unless-stopped
ports:
- "8080:80"
depends_on:
- db
environment:
- APACHE_DOCUMENT_ROOT=/var/www/html
volumes:
- dolibarr-data:/var/www/html
labels:
- "com.ovh.docker.network=frontend"
volumes:
mariadb-data:
dolibarr-data:

# Lancer le stack
docker-compose up -d

3.4. Configuration SSL avec Certbot (API OVH)

sudo apt install -y certbot
# Utilisez le plugin « manual » avec votre domaine OVH
certbot certonly --manual --preferred-challenges dns certonly \
-d www.mondomaine.com

Copiez les certificats (/etc/letsencrypt/live/...) dans le répertoire /etc/nginx/ssl/ et ajoutez-les à votre configuration Nginx (ou Caddy) en tant que reverse‑proxy.

3.5. Premier import CSV

  1. Préparez le fichier

    nom,prenom,email,adresse,code_postal,ville,pays
    DUPONT,Jean,jean.dupont@exemple.com,Rue de Paris,75001,Paris,FR

  2. Utilisez le script intégré de Dolibarr

    php /var/www/html/htdocs/comm/action/importcsv.php \
    --module=client \
    --file=/home/user/import.csv \
    --sep=',' \
    --encoding=utf-8

    Tip : choisissez le séparateur correct (; ou ,) et le bon encodage pour éviter les caractères garbled.

  3. Vérifiez les champsCRM → Clients → Import → “Vérifier les erreurs”.

3.6. Export CSV automatisé (Cron)

# /etc/cron.d/dolibarr-export
# Export quotidien des factures au format CSV
0 2 * * * www-data php /var/www/html/htdocs/cron/export.php \
--module=facture \
--output=/backups/dolibarr/factures_$(date +\%Y\%m\%d).csv \
--format=export

Note : le répertoire /backups doit être mappé sur un stockage externe (OVH Object Storage ou un disque supplémentaire).


4. Automatisation avancée : stockage CSV dans OVH Object Storage

4.1. Créez un bucket

# Via l’interface OVH ou CLI
ovhcli objectstorage mb my-bucket --region=fr-par

4.2. Script d’uploader (bash)

#!/bin/bash
FILE="/backups/dolibarr/factures_$(date +%Y%m%d).csv"
# Authentification via les variables d’environnement OVH_*
export OSC_URL="https://wcal.api.ovh.com/1.0"
export OSC_KEY="<APP_KEY>"
export OSC_SECRET="<APP_SECRET>"
export OSC_PROJECT_ID=$(ovhcli compute project list --output-format json | jq -r '.[0].id')
# Upload
ovhcli objectstorage put "$FILE" "my-bucket" --region=fr-par

Add this script to votre crontab après la génération du CSV pour que les fichiers arrivent automatiquement dans le bucket.


5. Bonnes pratiques & Astuces CSV

Convention Règle
Encodage UTF‑8 avec BOM pour les fichiers français (BOM recommandé si vous avez beaucoup d’épisodes de “character encoding issue”).
Séparateur Utilisez le point‑virgule (;) comme séparateur si vos champs contiennent parfois des virgules.
Header La première ligne doit contenir les libellés exacts des champs Dolibarr (Catégorie, Nom, TVA, …).
Taille Si le CSV dépasse 10 Mo, activez le paramètre --max_allowed_packet dans MariaDB (≥ 64 M).
Validation Avant import, lancez le parser php -r "require '/var/www/html/htdocs/cron/validate_csv.php';" pour détecter les lignes vides ou les champs vides obligatoires.


6. Sécurité & Sauvegarde

  1. Pare‑feu : ne laissez ouvert que le port 443 (HTTPS).
  2. Fail2Ban : bloquez les requêtes HTTP brutales.
  3. Sauvegarde cyclique : docker exec mysql mysqldump -u root -p$DB_ROOT_PWD dolibarr > /backups/dolibarr_$(date +%Y%m%d).sql.
  4. Rotation des logs : utilisez logrotate sur /var/log/nginx/*.log.
  5. Mise à jour : planifiez une mise à jour mensuelle du container dolibarr/dolibarr:latest.


7. Conclusion

En moins d’un mois, il est possible de mettre en place une architecture robuste combinant Dolibarr et OVH, capable d’ingérer et d’exporter des fichiers CSV de façon fiable et sécurisée. Le processus décrit ci‑dessus :

  • Provisionne rapidement une machine virtuelle OVH.
  • Déploie Dolibarr via Docker (facile à scaler).
  • Configure SSL, le stockage de sauvegardes et la génération automatisée de CSV.
  • Intègre le tout dans un workflow de 30 jours, incluant tests, audit et documentation.

Résultat : vous avez aujourd’hui un ERP ouvert, extensible et prêt à communiquer avec d’autres services cloud (Object Storage, API d’envoi d’emails, etc.), le tout sans frais de licence et avec la flexibilité de faire évoluer l’infrastructure à la demande.


🎯 Prochaine étape

Planifiez dès maintenant le sprint de 7 jours où vous créerez votre premier script d’import CSV.
En suivant le calendrier de 30 jours présenté ci‑dessus, vous serez en production avant la fin du mois, avec un tableau de bord CSV complet et une sauvegarde prête à l’emploi.

Bonne intégration ! 🚀


Publications similaires