Pourquoi les agences cherchent une alternative à Jira en 2026. La migration vers Jira Cloud a concentré plusieurs hausses successives : fin de vie de Data Center annoncée, fin des licences perpétuelles Server, et révision des grilles Cloud en 2024 puis en 2026. Pour une agence de dix personnes, le coût annuel d'un outil de PM cloud — Jira, Asana, Monday — dépasse couramment 3 000 € HT. OpenProject Community édition, auto-hébergé sur un VPS, ramène ce poste à zéro hors infrastructure.
- Gantt interactif avec dépendances entre tâches et chemin critique
- Suivi du temps par tâche et par projet, exportable en CSV pour la facturation
- Jalons et livrables contractuels attachés à la roadmap
- Wiki intégré pour la documentation projet, sans outil tiers
- Gestion des versions et releases pour les projets logiciels
- Contrôle d'accès granulaire par rôle (lecteur, contributeur, chef de projet, administrateur)
- Licence GPLv3 : le code source est auditable et aucune télémétrie n'est imposée
Prérequis : 2 Go de RAM minimum. OpenProject repose sur Ruby on Rails côté serveur, ce qui explique son empreinte mémoire supérieure à des outils comme Plane ou Vikunja. En pratique, 2 Go de RAM suffisent pour une équipe de cinq à quinze personnes avec quelques projets actifs. Un VPS à 2 vCPU / 2 Go (type VPS-2 chez ServOrbit) tient la charge sans saturation notable. Pour vingt personnes ou plus, ou pour des projets avec un grand nombre de pièces jointes, passer à 4 Go évite les lenteurs lors des chargements de diagrammes Gantt complexes. Le disque doit prévoir au minimum 20 Go pour PostgreSQL, les pièces jointes et les logs applicatifs ; 40 Go sont recommandés pour une équipe qui attache régulièrement des documents à ses tâches.
OpenProject, Plane et Kaneo : trois outils, trois positionnements
Trois gestionnaires de projets open source, trois approches différentes. Le comparatif ci-dessous aide à choisir selon les besoins de l'équipe.
Comparatif
Faites défiler le tableau
| Critère | Openproject | Plane | Kaneo |
|---|---|---|---|
| Paradigme principal | PM enterprise : Gantt, jalons, feuilles de temps, budgets | PM agile : cycles, backlogs, sprints, états personnalisés | Kanban visuel : cartes, colonnes, étiquettes |
| Gantt natif | Oui, avec dépendances et chemin critique | Non (roadmap partielle, sans dépendances) | Non |
| Suivi du temps | Oui, par tâche et par projet | Non dans la version Community | Non |
| Cible | Agences, équipes avec jalons contractuels, projets pluriannuels | Équipes produit agile, petites startups | Équipes qui veulent un Kanban minimaliste |
| RAM minimale | 2 Go | 1 Go | 512 Mo |
| Licence | GPLv3 | AGPL v3 | MIT |
Préparer le VPS
Connectez-vous en SSH, mettez à jour les paquets et installez Docker avec le plugin Compose :
apt update && apt install -y docker.io docker-compose-plugin. Vérifiez l'installation avecdocker compose version(v2.x attendu).Récupérer le Compose officiel
Clonez le dépôt de déploiement officiel :
git clone https://github.com/opf/openproject-deploy.git /opt/openproject && cd /opt/openproject/compose. Ce dépôt maintient le fichierdocker-compose.ymlet le fichier d'environnement.envrecommandés par l'équipe OpenProject.Configurer les variables d'environnement
Copiez l'exemple :
cp .env.example .envpuis éditez.env. Les variables obligatoires sont :OPENPROJECT_HOST__NAME=votre-domaine.com(double underscore),OPENPROJECT_HTTPS=true, etSECRET_KEY_BASEgénéré paropenssl rand -hex 64. Définissez aussiPOSTGRES_PASSWORDetOPENPROJECT_DB_PASSWORDavec la même valeur forte.Démarrer les conteneurs
Lancez
docker compose up -d. L'imageopenproject/community:latesttélécharge environ 600 Mo. Le premier démarrage prend deux à quatre minutes le temps que les migrations de base de données s'exécutent. Surveillez avecdocker compose logs -f webjusqu'à voir la ligneListening on tcp://0.0.0.0:8080.Vérifier que l'application répond
Depuis le VPS :
curl -s -o /dev/null -w "%{http_code}" http://localhost:8080. Un code 200 ou 302 confirme que l'application est en ligne. À ce stade elle est accessible uniquement en local — le reverse proxy nginx suivra à l'étape suivante.
Installer nginx et certbot
Sur Debian/Ubuntu :
apt install -y nginx certbot python3-certbot-nginx. Assurez-vous que le DNS de votre domaine pointe vers l'IP du VPS avant de continuer.Créer le vhost nginx
Créez
/etc/nginx/sites-available/openprojectavec le contenu suivant :server { listen 80; server_name votre-domaine.com; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto https; proxy_read_timeout 120s; client_max_body_size 100M; } }. Activez le site :ln -s /etc/nginx/sites-available/openproject /etc/nginx/sites-enabled/ && nginx -t && systemctl reload nginx.Obtenir le certificat TLS
Exécutez
certbot --nginx -d votre-domaine.com. Certbot modifie le vhost pour écouter sur le port 443, ajoute les directivesssl_certificateet configure la redirection HTTP→HTTPS automatiquement. Le certificat se renouvelle via le timer systemdcertbot.timer.
Créer son premier projet et configurer le Gantt
Une fois OpenProject déployé et accessible, ces étapes guident la création du premier projet et l'activation de la vue Gantt.
Accéder à l'interface et changer le mot de passe admin
Ouvrez
https://votre-domaine.comdans un navigateur. Connectez-vous avecadmin/adminet changez le mot de passe immédiatement. Configurez ensuite l'URL de l'application dans Administration > Paramètres > Général si elle n'a pas été détectée automatiquement depuisOPENPROJECT_HOST__NAME.Créer un projet et inviter les membres
Cliquez sur « Nouveau projet », choisissez un nom, activez les modules utiles : Tâches, Gantt, Suivi du temps, Wiki. Invitez les membres depuis l'onglet Paramètres > Membres en leur assignant un rôle (Membre, Chef de projet, etc.).
Créer des tâches et définir les dépendances
Dans la vue Liste des tâches, créez les premières tâches avec des dates de début et de fin. Basculez en vue Gantt pour visualiser la chronologie. Pour créer une dépendance, ouvrez une tâche et renseignez le champ « Précédée par » avec le numéro de la tâche parente.
Configurer les jalons
Un jalon est une tâche de type Milestone. Créez-en depuis la vue Gantt (type « Jalon ») ou depuis la liste en changeant le type. Les jalons apparaissent sous forme de losange sur le diagramme — utiles pour marquer les livrables contractuels.
Activer les feuilles de temps
Dans Administration > Paramètres > Journaux de travail, activez le module. Chaque membre peut ensuite saisir son temps via le bouton chronomètre sur une tâche ouverte. Les rapports agrégés par projet et par période sont accessibles depuis Rapports > Journaux de travail.
Sauvegardes PostgreSQL hebdomadaires : ajoutez ce cron sur le VPS pour exporter la base toutes les semaines : 0 3 * * 0 docker exec openproject_db pg_dump -U openproject openproject | gzip > /var/backups/openproject_$(date +%Y%m%d).sql.gz. Conservez les sept dernières archives avec find /var/backups -name 'openproject_*.sql.gz' -mtime +7 -delete. Testez la restauration une fois par mois dans un environnement isolé.
Dépannage — erreurs fréquentes
Les erreurs les plus communes lors du déploiement ou de la première utilisation d'OpenProject, avec leurs solutions.
502 Bad Gatewayau premier démarrage : les migrations Rails ne sont pas terminées. Attendez deux à cinq minutes et vérifiezdocker compose logs webpour confirmer l'écoute sur le port 8080.- Page blanche ou erreur 500 :
SECRET_KEY_BASEest vide ou incorrectement défini. Régénérez-le avecopenssl rand -hex 64et redémarrez avecdocker compose up -d --force-recreate. - Pièces jointes refusées : la taille par défaut de nginx est 1 Mo. Augmentez
client_max_body_sizedans le vhost (100 Mo recommandés pour les fichiers projets). - Problème d'envoi d'e-mails : configurez les variables
OPENPROJECT_SMTP_*dans.env(hôte SMTP, port 587, identifiants). Sans configuration SMTP, les invitations de membres ne partent pas. - Mise à jour de l'image :
docker compose pull && docker compose up -d. OpenProject effectue les migrations automatiquement au démarrage. Faites une sauvegarde de la base avant chaque mise à jour majeure.
Adoption souveraine : le cas néerlandais. En septembre 2026, le gouvernement néerlandais a publié les spécifications de DAWO (Digitaal Autonome Werkomgeving Overheid), un plan d'environnement de travail souverain basé sur NixOS, visant à réduire la dépendance aux plateformes américaines pour les administrations publiques. La stack retenue inclut Nextcloud pour les fichiers, Element pour la messagerie, Collabora pour les documents bureautiques et OpenProject pour la gestion de projet. Huit communes participent aux tests pratiques. Ce choix valide la maturité de l'outil pour des contextes où l'hébergement des données ne peut pas être délégué à un prestataire hors UE.
Pour aller plus loin. OpenProject couvre les projets à fort contenu Gantt et feuilles de temps. Pour un backlog produit agile, Plane (cycles et sprints) correspond mieux. Pour un Kanban léger sans surcoût mémoire, Kaneo reste l'option la plus économe. Si vous gérez plusieurs clients depuis une seule interface, l'espace agence ServOrbit permet de superviser les VPS de chaque client, d'accéder aux consoles et de gérer les renouvellements sans jongler entre plusieurs tableaux de bord.