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

# Migre do Railway para a Square Cloud

> Migre do Railway para a Square Cloud: mapeie o railway.json, as variáveis e os plugins de banco de dados, faça deploy com a CLI e passe a um plano mensal fixo.

## O que você tem na Square Cloud

* **Preço fixo e previsível em BRL**: o preço de um único plano mensal pela RAM e pela vCPU que as suas aplicações usam, independente de quanto tráfego elas recebem. Veja [Planos e Preços](/pt-br/platform/plans).
* **Recursos dedicados**: RAM e vCPU são reservadas para as suas aplicações.
* **Deploy em segundos**: envie um zip ou faça push via CLI e a sua aplicação está rodando.

## Mapeamento de conceitos

| Railway | Square Cloud |
| - | - |
| `railway.json` / Nixpacks | [Arquivo de configuração `squarecloud.app`](/pt-br/getting-started/config-file) + [Runtimes](/pt-br/runtimes/introduction) automáticos |
| Cobrança baseada em uso | [Preço fixo mensal por plano](/pt-br/platform/plans) |
| Plugins Postgres/Redis | [Bancos de dados gerenciados da Square Cloud](/pt-br/services/databases) (PostgreSQL, MySQL, MongoDB, Redis) |
| Variáveis de ambiente | [Variáveis de ambiente](/pt-br/platform/environment-variables), definidas no dashboard ou enviadas de um arquivo `.env` |
| Variável `PORT` | `PORT`, definida como `80` na Square Cloud, mais `HOST=0.0.0.0`: um código que escuta em `process.env.PORT` continua funcionando |
| `railway up` | `squarecloud upload` |
| Domínios personalizados | Domínios personalizados no [plano Standard ou superior](/pt-br/platform/plans) |

## Passos de migração

<Steps>
  <Step title="Crie seu arquivo de configuração">
    Substitua a detecção do `railway.json`/Nixpacks por um arquivo `squarecloud.app` na raiz do seu projeto:

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

    Os [Runtimes](/pt-br/runtimes/introduction) da Square Cloud detectam a sua linguagem automaticamente pela extensão do arquivo `MAIN` e conferem o arquivo de dependências, como `package.json` ou `requirements.txt`. Um serviço web precisa escutar no host `0.0.0.0` e na porta da variável `PORT` (`80`). Veja a [referência do arquivo de configuração](/pt-br/getting-started/config-file) para todos os campos.
  </Step>

  <Step title="Defina suas variáveis de ambiente">
    Recrie as variáveis da aba Variables do seu projeto no Railway, seja pela aba de variáveis de ambiente do dashboard ou enviando um arquivo `.env`:

    ```bash theme={"system"}
    squarecloud app env set --from-file .env --app <appID>
    ```

    Depois, reinicie a aplicação: ela lê as variáveis de ambiente ao iniciar. Veja [Variáveis de ambiente](/pt-br/platform/environment-variables).
  </Step>

  <Step title="Faça o deploy">
    Envie seu projeto pela CLI ou pelo dashboard, no lugar de `railway up`:

    ```bash theme={"system"}
    squarecloud upload
    ```

    Veja [Como Hospedar seu Site/API](/pt-br/tutorials/how-to-deploy-your-website) para um passo a passo completo dos dois métodos.
  </Step>

  <Step title="Migre plugins para bancos de dados gerenciados">
    Se seu projeto usava um plugin Postgres, MySQL ou Redis do Railway, provisione o [banco de dados gerenciado da Square Cloud](/pt-br/services/databases) equivalente e aponte a connection string da sua aplicação para ele.
  </Step>

  <Step title="Aponte seu DNS">
    Assim que a aplicação estiver no ar em `<subdominio>.squareweb.app`, aponte o DNS do seu domínio para a Square Cloud e vincule-o pela CLI:

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

    Domínios personalizados exigem um plano Standard ativo ou superior. Para os registros DNS, veja [como configurar seu próprio domínio](https://help.squarecloud.app/pt-br/article/como-configurar-seu-proprio-dominio-cnamedns-j39hh2/) na central de ajuda.
  </Step>
</Steps>

## Principais diferenças a considerar

* **Modelo de cobrança.** Não há um medidor de uso por segundo para acompanhar: o custo é fixo por plano, independente do tráfego. Dimensione seu plano pela necessidade de RAM/vCPU em vez do uso projetado. Veja [Planos e Preços](/pt-br/platform/plans).
* **Região e latência.** O data center da Square Cloud fica localizado em Nova Iorque: veja a [Visão Geral da Plataforma](/pt-br/platform/overview) para detalhes de infraestrutura. Meça a latência a partir da sua base de usuários antes de migrar se você rodava em uma região diferente do Railway.
* **Bancos de dados migram separadamente.** Migrar dados de um plugin Postgres/Redis do Railway significa exportá-los e restaurá-los em um novo [banco de dados gerenciado da Square Cloud](/pt-br/services/databases): planeje uma janela de manutenção para a transição.

## Próximos passos

<CardGroup cols={3}>
  <Card title="Arquivo de configuração" icon="file-code" href="/pt-br/getting-started/config-file">
    Todos os campos do arquivo que substitui o railway.json.
  </Card>

  <Card title="Variáveis de ambiente" icon="key" href="/pt-br/platform/environment-variables">
    Leve as suas variáveis e mantenha os segredos fora do código.
  </Card>

  <Card title="Banco de dados gerenciado" icon="database" href="/pt-br/tutorials/how-to-deploy-your-database">
    Crie o banco de dados que substitui o seu plugin do Railway.
  </Card>
</CardGroup>

## Contate-nos

Se você continuar enfrentando **dificuldades técnicas**, nossa **equipe de suporte especializada** está disponível para auxiliá-lo. [**Entre em contato conosco**](https://squarecloud.app/pt-br/support) e teremos prazer em ajudá-lo a resolver qualquer questão: a qualidade do suporte é uma grande parte do motivo pelo qual desenvolvedores avaliam a Square Cloud com [**4,9/5 em 402 avaliações**](https://www.trustpilot.com/review/squarecloud.app) no Google e Trustpilot.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.