> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Migrer de Heroku vers Square Cloud

> Un guide pratique pour déplacer une application web, un worker ou une API de Heroku vers Square Cloud : correspondance de configuration, étapes de déploiement et différences clés à anticiper.

## Pourquoi les développeurs migrent

Le modèle de dynos de Heroku facture les heures de calcul et les add-ons séparément, ce qui rend le coût mensuel difficile à prévoir à mesure qu'une application grandit. Square Cloud adopte une approche différente :

* **Tarification forfaitaire prévisible en BRL** : un seul prix de plan couvre la RAM, le vCPU et le stockage Blob, sans facture d'add-on à l'usage qui s'empile par-dessus. Consultez [Plans et tarifs](/fr/platform/plans).
* **Ressources dédiées** : la RAM et le vCPU sont réservés à votre application, pas une capacité partagée au mieux.
* **Déploiement en quelques secondes** : envoyez un zip ou poussez via la CLI et votre application est en ligne, sans file d'attente de build.

## Correspondance des concepts

| Heroku                                           | Square Cloud                                                                                         |
| ------------------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| `Procfile` (types de processus `web:`/`worker:`) | [Fichier de configuration `squarecloud.app`](/fr/getting-started/config-file), champs `MAIN`/`START` |
| Buildpacks                                       | [Runtimes](/fr/runtimes/introduction), détection automatique du langage, pas de buildpack à choisir  |
| Config Vars                                      | Variables d'environnement, définies dans le tableau de bord ou envoyées depuis un fichier `.env`     |
| Heroku Postgres                                  | [Bases de données gérées Square Cloud](/fr/services/databases) (PostgreSQL, MySQL, MongoDB, Redis)   |
| `heroku logs --tail`                             | Logs du tableau de bord, ou `squarecloud app logs` depuis la CLI                                     |
| Domaines personnalisés (dynos payants)           | Domaines personnalisés sur le [plan Standard ou supérieur](/fr/platform/plans)                       |

## Étapes de migration

<Steps>
  <Step title="Créez votre fichier de configuration">
    Remplacez votre `Procfile` par un fichier `squarecloud.app` à la racine de votre projet. Un `Procfile` Heroku comme :

    ```
    web: node index.js
    ```

    devient :

    ```systemd squarecloud.app theme={null}
    MAIN=index.js
    MEMORY=512
    VERSION=recommended
    DISPLAY_NAME=My migrated app
    SUBDOMAIN=my-app
    ```

    Pour un type de processus worker, retirez `SUBDOMAIN` et définissez `START` avec la commande de démarrage de votre worker à la place. Consultez la [référence du fichier de configuration](/fr/getting-started/config-file) pour tous les champs.
  </Step>

  <Step title="Configurez vos variables d'environnement">
    Exportez vos Config Vars Heroku (`heroku config`) et définissez les mêmes clés sur Square Cloud, soit depuis le panneau de variables d'environnement du tableau de bord, soit en envoyant un fichier `.env` :

    ```bash theme={null}
    squarecloud app env set --from-file .env --app <appID>
    ```
  </Step>

  <Step title="Déployez">
    Envoyez votre projet via la CLI ou le tableau de bord :

    ```bash theme={null}
    squarecloud upload
    ```

    Consultez [Comment héberger votre site web/API](/fr/tutorials/how-to-deploy-your-website) pour un guide complet des deux méthodes.
  </Step>

  <Step title="Pointez votre DNS">
    Une fois l'application en ligne à `<subdomain>.squareweb.app`, pointez le DNS de votre domaine vers Square Cloud et attachez-le depuis la CLI :

    ```bash theme={null}
    squarecloud app network domain example.com --app <appID>
    ```

    Les domaines personnalisés nécessitent un plan Standard actif ou supérieur.
  </Step>
</Steps>

## Différences clés à anticiper

* **Région et latence.** Le centre de données de Square Cloud est situé à New York, consultez la [vue d'ensemble de la plateforme](/fr/platform/overview) pour les détails d'infrastructure. Si la majorité de vos utilisateurs se trouvent dans une région différente de votre région de dyno Heroku actuelle, mesurez la latence avant de basculer.
* **Aucun niveau de dyno gratuit.** Square Cloud n'a pas d'équivalent de dyno gratuit, un plan payant actif est requis pour faire tourner toute application. Consultez [Plans et tarifs](/fr/platform/plans) pour choisir le palier adapté à votre charge de travail.
* **Les bases de données se déplacent séparément.** Migrer les données de Heroku Postgres implique de les exporter (par ex. `pg_dump`) et de les restaurer dans une nouvelle [base de données gérée Square Cloud](/fr/services/databases), prévoyez une fenêtre de maintenance pour la bascule.

## Contactez-nous

Si vous rencontrez toujours des **difficultés techniques**, notre **équipe de support spécialisée** est disponible pour vous aider. [**Contactez-nous**](https://squarecloud.app/fr/support) et nous serons ravis de vous aider à résoudre tout problème. La qualité du support compte pour beaucoup dans la note que les développeurs donnent à Square Cloud, [**4,9/5 sur 402 avis**](https://www.trustpilot.com/review/squarecloud.app) sur Google et Trustpilot.
