Retour au blog
Cloud souverainClever CloudFrankenPHPDevOpsSymfony

Dentopus : d'AWS au cloud souverain de Clever Cloud Maroc

Migration de Dentopus d'AWS vers Clever Cloud Maroc : cloud souverain, FrankenPHP, Cellar en remplacement de S3 et une facture enfin maîtrisée.

par Ouifork 5 min de lecture
Cloud souverain marocain : minaret de la Koutoubia et drapeau du Maroc, serveurs Clever Cloud Maroc et FrankenPHP, data center hébergé au Maroc

Migrer une application en production n’est jamais une décision anodine — et c’est précisément le genre d’arbitrage que nous aimons relever. Pour Dentopus, notre plateforme SaaS dédiée aux professionnels dentaires, le choix était stratégique : quitter AWS pour rejoindre Clever Cloud Maroc et adopter une infrastructure souveraine, hébergée au plus près de nos utilisateurs marocains.

Voici le récit de cette migration, les motivations derrière chaque choix technique, et les enseignements que nous en tirons — ceux-là mêmes que nous mettons aujourd’hui au service de nos clients.

Pourquoi quitter AWS ?

Sur le papier, AWS coche toutes les cases. Mais au quotidien, notre architecture était devenue lourde à exploiter et difficile à prévoir budgétairement. Avant la migration, Dentopus reposait sur :

  • des pods hébergés sur Kubernetes (Amazon EKS) pour servir l’application ;
  • Caddy + PHP-FPM comme couche serveur web et exécution PHP ;
  • Amazon RDS pour la base de données managée ;
  • Amazon S3 pour le stockage des fichiers et documents patients.

Trois problèmes se sont imposés avec le temps :

  1. Une facture imprévisible. Entre le trafic sortant, les IOPS de RDS, le stockage S3 et la note EKS, le coût mensuel variait fortement et restait difficile à anticiper.
  2. Une complexité opérationnelle disproportionnée. Maintenir un cluster Kubernetes pour une application de cette taille mobilisait un temps d’ingénierie considérable, sans valeur ajoutée pour nos clients.
  3. La question de la souveraineté des données. Dentopus traite des données de santé. Les héberger au Maroc, sous juridiction locale, n’est pas un détail : c’est un argument de confiance et de conformité.

Le choix du cloud souverain marocain

Héberger les données de santé de praticiens marocains sur des serveurs marocains relève du bon sens. Clever Cloud Maroc nous permet de garantir à nos clients que leurs données restent sous juridiction marocaine, avec une latence réduite pour les utilisateurs locaux.

Au-delà de la conformité, le cloud souverain est devenu un véritable argument commercial : nos clients du secteur médical sont de plus en plus attentifs à la localisation et à la maîtrise de leurs données. Pouvoir répondre « vos données ne quittent jamais le Maroc » change la nature de la conversation — et c’est un atout que nous aidons désormais d’autres éditeurs SaaS à activer.

FrankenPHP : un serveur applicatif unifié

C’est sans doute le changement le plus structurant de cette migration. Nous avons remplacé le duo Caddy + PHP-FPM par FrankenPHP, un serveur d’application moderne écrit en Go qui embarque PHP directement.

Les bénéfices ont été immédiats :

  • Une seule brique à opérer au lieu de deux processus à coordonner (le reverse proxy et le pool PHP-FPM).
  • Le mode worker : l’application Symfony est démarrée une fois et conservée en mémoire entre les requêtes, ce qui réduit drastiquement la latence par rapport au cycle de vie traditionnel de PHP-FPM.
  • Une configuration simplifiée, puisque FrankenPHP s’appuie sur Caddy en interne — nous conservons donc le HTTPS automatique et la simplicité de Caddy, mais sans gérer FPM séparément.

Pour une application Symfony, FrankenPHP est aujourd’hui un compagnon naturel : l’écosystème pousse activement dans cette direction, et les gains de performance sont tangibles dès la mise en production.

Cellar : remplacer S3 sans réécrire le code

Le stockage de fichiers était l’un de nos points sensibles. Bonne nouvelle : Cellar, l’offre de stockage objet de Clever Cloud, est compatible avec l’API S3. Concrètement, notre code applicatif n’a quasiment pas changé — il a suffi de pointer les identifiants et l’endpoint vers Cellar.

Les avantages :

  • Compatibilité S3 : nos bibliothèques et notre logique d’upload existantes fonctionnent telles quelles.
  • Une tarification lisible, sans la multiplication des lignes de facturation propre à S3 (requêtes, transfert, classes de stockage…).
  • La cohérence souveraine : les fichiers restent eux aussi hébergés dans l’écosystème Clever Cloud Maroc.

Maîtriser les coûts : l’objectif transversal

Le fil rouge de toute cette migration, c’est le contrôle des coûts. En abandonnant Kubernetes et la facturation à tiroirs d’AWS, nous avons obtenu :

  • une facture prévisible, alignée sur des add-ons clairement dimensionnés ;
  • la fin du coût caché lié à l’exploitation d’un cluster EKS ;
  • une base de données managée et un stockage objet dont nous connaissons le prix à l’avance.

La prévisibilité budgétaire n’est pas qu’un confort comptable : elle nous permet de proposer à nos clients une tarification stable, sans répercuter les soubresauts d’une facture cloud volatile.

Le bilan de la migration

Avant (AWS)Après (Clever Cloud Maroc)
Pods sur Kubernetes (EKS)Applications managées Clever Cloud
Caddy + PHP-FPMFrankenPHP (mode worker)
Amazon RDSBase de données managée
Amazon S3Cellar (compatible S3)
Facture imprévisibleCoûts maîtrisés et prévisibles
Données hors du MarocCloud souverain marocain

Cette migration a réduit notre complexité opérationnelle, ancré nos données dans la souveraineté marocaine et rendu nos coûts enfin prévisibles — le tout en améliorant les performances grâce à FrankenPHP. Surtout, elle nous a donné une méthode éprouvée, réutilisable, que nous appliquons aujourd’hui sur d’autres projets.

Et pour votre projet ?

Nous n’avons pas seulement lu ces sujets : nous les avons mis en production sur notre propre plateforme. C’est cette expérience concrète — du cluster Kubernetes au cloud souverain — que nous mobilisons pour nos clients.

Chez Ouifork, nous accompagnons les entreprises dans la conception, le déploiement et l’optimisation de leurs infrastructures Symfony et Sylius. Si vous vous interrogez sur une migration vers un cloud souverain, sur l’adoption de FrankenPHP ou simplement sur la maîtrise de votre facture cloud, prenons quelques minutes pour en discuter — sans engagement.