De Heroku à Scalingo : migrez vers un PaaS européen en quelques minutes

4 décembre 2025 - 5 min de lecture
De Heroku à Scalingo : migrez vers un PaaS européen en quelques minutes

Vous appréciez Heroku pour sa simplicité d’utilisation et sa polyvalence, mais vous souhaiteriez aujourd’hui adopter une alternative européene à Heroku, qui vous offre plus de contrôle, de transparence et de souveraineté ? Bienvenue chez Scalingo !

Plusieurs de nos clients, comme Le Wagon ou Yespark, ont fait ce choix, pour conserver l’approche accueillante du PaaS tout en profitant d’un hébergement des données en France et d’un support de haute qualité.

La bonne nouvelle, c’est que notre fonctionnement facilite la migration depuis Heroku et vous permet d’utiliser notre plateforme en quelques minutes, en toute sérénité. On vous explique dans ce tutoriel.

Pour démarrer

Première étape, sélectionner une application à migrer. Pour ce tutoriel, nous allons utiliser une application appelée “FilmReco”. C’est une petite application de recommandation de films, sur laquelle les utilisateurs peuvent entrer une description d’un film et qui retourne le film le plus similaire à celle-ci.

Elle utilise ces technologies :

Pour les besoins de ce tutoriel et se rapprocher au plus près de l’expérience d’un utilisateur d’Heroku qui souhaite migrer, nous l’avons hébergée dans un premier temps sur ce service.

Si votre application ne présente pas les mêmes caractéristiques que notre application d’exemple, pas de problème : Scalingo prend en charge de nombreux langages, frameworks et bases de données. Il vous suffira d’adapter les prochaines étapes, qui restent similaires, à vos technologies utilisées.

Désormais, voyons comment migrer cette application sur Scalingo.

Bon à savoir : chez Scalingo, comme chez Heroku, nous utilisons un système de buildpacks. Il permet à notre système de détecter la technologie utilisée par votre application pour installer les dépendances nécessaires, mais offre également la possibilité d’étendre les possibilités de notre plateforme à l’aide des buildpacks custom.

Récupération de l’app et mise en place sur Scalingo

Maintenant, clonons l’application actuellement hébergée sur Heroku sur notre machine locale. Comme détaillé dans notre documentation, les commandes sont les suivantes :

# Log in to Heroku
heroku login

# Clone the Heroku app
heroku git:clone -a filmreco

cd filmreco

Modifiez simplement “filmreco” pour y mettre le nom de votre application !

Après cette étape, vous devriez avoir le code complet de l’application, dont le Procfile, requirements.txt et la configuration de l’environnement.

Il faut désormais créer l’application sur Scalingo. Pour cela, vous avez deux choix :

  • Vous préférez une interface graphique : connectez-vous sur le site de Scalingo (ou inscrivez-vous si ce n’est pas déjà fait, nous vous offrons 30 jours à la première inscription !). Une fois sur le tableau de bord, sélectionnez “Créez une application” et donnez-lui le nom que vous souhaitez (ici, nous allons continuer à utiliser “filmreco”.)

  • Vous êtes à l’aise avec une invite de commandes : vous pouvez utiliser notre CLI, qui est l’option que nous avons choisie pour ce tutoriel.

Pour vous connecter à Scalingo et créer l’application à l’aide de notre CLI :

# Log in to Scalingo
scalingo login

# Create the app
scalingo create filmreco

Comme Heroku, Scalingo met immédiatement en place un git remote pour vous :

git remote rm heroku
git remote add scalingo git@ssh.<region>.scalingo.com:filmreco.git

A partir de là, un simple commit suffira à déployer votre application.

Mais avant ça, ajoutons une base de données à notre application Scalingo.

Création et mise en place de la base de données

Nous l’avons dit auparavant : notre application test utilise PostgreSQL et particulièrement l’extension pgvector, incluse à notre offre PostgreSQL. Si votre application utilise une autre base de données, les étapes seront similaires. Pour en savoir plus, nous vous invitons à visiter notre documentation, qui contient toutes les informations sur les bases de données prises en charge par Scalingo.

Première étape pour cette mise en place de notre base de données sur Scalingo, récupérer les données sur Heroku. Pour cela, nous allons exporter un dump de notre base de données à partir du service :

heroku pg:backups:capture --app filmreco
heroku pg:backups:download --app filmreco

Sur Scalingo, nous devons maintenant ajouter notre addon de base de données.

Pour cela, rendez-vous sur le tableau de bord de la plateforme et sélectionnez votre application. Allez dans le menu “Ressources”. Dans la partie "Addons", sélectionnez “Ajouter un addon”. Vous pouvez désormais sélectionner la base de données que vous souhaitez et le plan qui convient à votre utilisation. Suivez les différentes étapes proposées pour finaliser l’ajout.

Une fois que votre base de données a été ajoutée sur Scalingo, vous obtiendrez une variable d’environnement DATABASE_URL, que vous pouvez retrouver dans la partie "Environnement" du tableau de bord.

Connectez-vous-y via notre CLI :

scalingo db-tunnel filmreco-db
pg_restore --verbose --clean --no-acl --no-owner \
  -h 127.0.0.1 -p <port> -U scalingo \
  -d filmreco_latest.dump

Enfin, si comme nous, vous utilisez PostgreSQL avec pgvector, vous pouvez activer pgvector à partir de la console de bases de données de Scalingo :

CREATE EXTENSION IF NOT EXISTS vector;

Maintenant que la mise en place de notre base de données est faite, il nous ne reste qu’une seule étape avant de déployer notre application sur Scalingo : ajouter les variables d’environnement.

Ajout des variables d’environnement et déploiement

Récupérez vos variables d’environnement sur Heroku :

heroku config

Vous pouvez ensuite soit les ajouter à partir du tableau de bord, dans la partie “Environnement”, ou vous pouvez les ajouter à l’aide de cette commande :

scalingo --app my-app env-set NAME=Value

Nous arrivons au meilleur moment : le premier déploiement. Si vous avez déjà réalisé un déploiement plus tôt, redémarrez votre application. Sinon, déployez-la à l’aide de ces commandes :

git add .
git commit -m "heroku to scalingo"
git push scalingo main

Nous vous l’avions expliqué plus haut avec les buildpacks, mais Scalingo s’occupe de tout en arrière-plan quand vous déployez une application : il détecte le runtime, installe les dépendances, lance votre Procfile et démarre vos web process, tout comme Heroku.

Et voilà, quelques secondes plus tard, notre application-test est live : https://filmreco.osc-fr1.scalingo.io/. Vérifiez de vous-même en cliquant sur “Ouvrir l’application” sur le tableau de bord !

Scalingo, la meilleure alternative européenne et sécurisée à Heroku

Après quelques minutes, c’est fait : votre application est désormais sur Scalingo. Une migration de Heroku à Scalingo rapide, avec un workflow familier, et le tout sans changement de code, en gardant les mêmes réflexes et habitudes.

La différence ? Vous profitez désormais d’un hébergement européen, sécurisé, fiable et certifié (ISO 27001, HDS et socle SecNumCloud fourni par Outscale). Une facilité d’utilisation similaire, la protection d’un PaaS européen sans lock-in en plus.

Testez-vous même dès maintenant en profitant du mois offert dès l’inscription sur notre service ! Besoin d’aide ? Notre support reste à votre disposition directement depuis votre tableau de bord. Vous souhaitez des informations supplémentaires sur nos offres ? Contactez notre service commercial.

Partager l'article
Fanny Dufour
Fanny Dufour
Fanny a débuté sa carrière dans les médias par le jeu vidéo, avant de s'orienter vers le développement web et de se passionner pour les enjeux plus larges qui affectent notre vie numérique. Elle est particulièrement engagée dans les domaines de la vie privée, des outils open-source, de la sécurité numérique, et d’une utilisation responsable des technologies.

Essayez gratuitement Scalingo

30 jours d'essai gratuit / Pas de CB nécessaire / Hébergé en France