> ## 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.

# Migrar de Heroku a Square Cloud

> Una guía práctica para mover una aplicación web, worker o API de Heroku a Square Cloud: mapeo de configuración, pasos de despliegue y diferencias clave a considerar.

## Por qué los desarrolladores migran

El modelo de dynos de Heroku factura por horas de cómputo y add-ons por separado, lo que hace difícil predecir el costo mensual a medida que una aplicación crece. Square Cloud toma un enfoque diferente:

* **Precios planos y predecibles en BRL** — un precio de plan cubre RAM, vCPU y almacenamiento Blob, sin facturas de add-ons medidos apilándose encima. Consulta [Planes y precios](/es/platform/plans).
* **Recursos dedicados** — la RAM y la vCPU están reservadas para tu aplicación, no son capacidad compartida de mejor esfuerzo.
* **Despliega en segundos** — sube un zip o haz push vía CLI y tu aplicación está corriendo, sin cola de build.

## Mapeo de conceptos

| Heroku                                         | Square Cloud                                                                                             |
| ---------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `Procfile` (tipos de proceso `web:`/`worker:`) | [Archivo de configuración `squarecloud.app`](/es/getting-started/config-file) — campos `MAIN`/`START`    |
| Buildpacks                                     | [Runtimes](/es/runtimes/introduction) — detección automática de lenguaje, sin buildpack que elegir       |
| Config Vars                                    | Variables de entorno, configuradas en el dashboard o subidas desde un archivo `.env`                     |
| Heroku Postgres                                | [Bases de datos gestionadas de Square Cloud](/es/services/databases) (PostgreSQL, MySQL, MongoDB, Redis) |
| `heroku logs --tail`                           | Logs del dashboard, o `squarecloud app logs` desde la CLI                                                |
| Dominios personalizados (dynos de pago)        | Dominios personalizados en el [plan Standard o superior](/es/platform/plans)                             |

## Pasos de migración

<Steps>
  <Step title="Crea tu archivo de configuración">
    Reemplaza tu `Procfile` con un archivo `squarecloud.app` en la raíz de tu proyecto. Un `Procfile` de Heroku como:

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

    se convierte en:

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

    Para un tipo de proceso worker, quita `SUBDOMAIN` y configura `START` con el comando de inicio de tu worker en su lugar. Consulta la [referencia del archivo de configuración](/es/getting-started/config-file) para cada campo.
  </Step>

  <Step title="Configura tus variables de entorno">
    Exporta tus Config Vars de Heroku (`heroku config`) y configura las mismas claves en Square Cloud, ya sea desde el panel de variables de entorno del dashboard o subiendo un archivo `.env`:

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

  <Step title="Despliega">
    Sube tu proyecto vía la CLI o el dashboard:

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

    Consulta [Cómo Alojar tu Sitio Web/API](/es/tutorials/how-to-deploy-your-website) para un recorrido completo de ambos métodos.
  </Step>

  <Step title="Apunta tu DNS">
    Una vez que la aplicación esté en vivo en `<subdomain>.squareweb.app`, apunta el DNS de tu dominio a Square Cloud y adjúntalo desde la CLI:

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

    Los dominios personalizados requieren un plan Standard o superior activo.
  </Step>
</Steps>

## Diferencias clave a considerar

* **Región y latencia.** El centro de datos de Square Cloud está ubicado en Nueva York — consulta la [Visión general de la plataforma](/es/platform/overview) para detalles de infraestructura. Si la mayoría de tus usuarios están en una región distinta a tu región actual de dyno de Heroku, mide la latencia antes de migrar.
* **Sin nivel de dyno gratuito.** Square Cloud no tiene un equivalente a dyno gratuito — se requiere un plan de pago activo para ejecutar cualquier aplicación. Consulta [Planes y precios](/es/platform/plans) para elegir el nivel correcto para tu carga de trabajo.
* **Las bases de datos se migran por separado.** Migrar los datos de Heroku Postgres significa exportarlos (por ejemplo, con `pg_dump`) y restaurarlos en una nueva [base de datos gestionada de Square Cloud](/es/services/databases) — planifica una ventana de mantenimiento para el cambio.

## Contáctanos

Si continúas enfrentando **dificultades técnicas**, nuestro **equipo de soporte especializado** está disponible para ayudarte. [**Contáctanos**](https://squarecloud.app/es/support) y estaremos encantados de ayudarte a resolver cualquier problema — la calidad del soporte es una gran parte de por qué los desarrolladores califican a Square Cloud con [**4.9/5 en 402 reseñas**](https://www.trustpilot.com/review/squarecloud.app) en Google y Trustpilot.
