Migration depuis Heroku

Vos buildpacks fonctionnent. Vos addons ont leurs équivalents. Compter 4 heures pour une app moyenne.

Checklist préalable

  1. Lister vos addons Heroku : heroku addons --app votre-app
  2. Récupérer la config : heroku config --app votre-app
  3. Sauvegarder la base : heroku pg:backups:capture --app votre-app
  4. Identifier vos process types dans le Procfile
  5. Noter votre stack (heroku-22, heroku-24)

Étapes de migration

# 1. Créer l'app sur paas.di2amp
$ paas apps:create monsite

# 2. Provisionner les addons équivalents
$ paas addons:create postgres-pro --app monsite
$ paas addons:create valkey-starter --app monsite

# 3. Restaurer la base depuis le backup Heroku
$ heroku pg:backups:download --app votre-app
$ paas pg:restore latest.dump --app monsite

# 4. Copier les variables d'environnement (sauf DATABASE_URL et REDIS_URL qui sont auto-injectées)
$ heroku config --app votre-app | grep -v _URL > config.txt
$ paas config:import config.txt --app monsite

# 5. Pousser le code
$ git remote add paas git@paas.di2amp.com:monsite.git
$ git push paas main

# 6. Tester
$ curl https://monsite.runtime.di2amp.com

# 7. Basculer le DNS
$ paas domains:add www.exemple.fr --app monsite
# puis CNAME www.exemple.fr → monsite.runtime.di2amp.com

Correspondance des addons

Herokupaas.di2amp
Heroku Postgrespostgres-* (starter, pro, pro-large)
Heroku Redisvalkey-* (compatible Redis API)
Heroku Data for Memcachedvalkey-* avec preset memcached
Bonsai Elasticsearchopensearch-*
Heroku Schedulercron-* dans paas.toml
Sendgrid, MailgunRestent utilisables tels quels (services externes)

Différences notables

  • Procfile : continue à fonctionner. Vous pouvez aussi utiliser paas.toml pour plus de configuration.
  • Pipelines Heroku : équivalents par preview environments et organisations multi-environnements.
  • Heroku CI : non supporté nativement. Utilisez GitHub Actions, GitLab CI, ou CircleCI avec notre CLI.

Migration assistée

Plan Entreprise : un ingénieur dédié vous accompagne pendant la migration. Plan Pro : accompagnement asynchrone par email. Demandez ici.