# Migrar de outra plataforma

> Passo a passo para trazer sua aplicação e seu banco de Heroku, Render, Vercel ou servidor próprio para a W8 Hub, sem downtime.

_Fonte: https://w8hub.com.br/docs/migrar-heroku-render-vercel_

Se a sua aplicação já roda em container ou tem um `Dockerfile`, a migração é mais chata que difícil. O roteiro abaixo é o que costuma dar certo, na ordem que evita retrabalho.

> [!TIP]
> Faça tudo **em paralelo**, com o serviço antigo no ar. Você só vira o tráfego no último passo, e só depois de conferir. Se algo der errado no meio, ninguém percebeu.

## 1. Suba a aplicação primeiro, sem banco

Crie a [instalação](https://w8hub.com.br/docs/criar-uma-instalacao) a partir do seu repositório ou de uma imagem Docker e deixe ela subir. Nesta etapa não importa se a aplicação ainda não conecta no banco — o que você quer saber é se ela **compila e sobe**.

Dois tropeços concentram a maioria dos problemas aqui, e vale conferir antes:

- **A porta.** A instalação precisa expor a porta em que a sua aplicação escuta.
- **O health check.** Se o seu app demora para iniciar, um health check apertado derruba o container antes de ele ficar pronto.

Os dois ficam em [Configurações da instalação](https://w8hub.com.br/docs/instalacao-configuracoes).

## 2. Provisione o banco

Crie o [banco gerenciado](https://w8hub.com.br/docs/bancos-de-dados) da engine que você já usa. Se o seu banco atual precisa ficar onde está — por contrato, por volume ou por enquanto —, dá para [registrá-lo como banco externo](https://w8hub.com.br/docs/bancos-externos) e seguir usando de lá.

## 3. Traga os dados

Exporte o dump da origem e use a [importação](https://w8hub.com.br/docs/bancos-importar). Ela roda uma verificação prévia, monta um plano e só escreve depois que você confirma — e tem desfazer.

Vale importar uma vez **antes** da virada, para medir quanto tempo leva com o seu volume. É a informação que decide se a virada cabe numa madrugada.

## 4. Ligue os dois

Em vez de copiar a string de conexão na mão, use um [vínculo](https://w8hub.com.br/docs/instalacao-vinculos): você liga a instalação ao banco por um apelido e a plataforma injeta a conexão nas variáveis. Se a senha mudar depois, nada quebra.

As demais variáveis de ambiente da plataforma antiga você recria em [Configurações](https://w8hub.com.br/docs/instalacao-configuracoes#variaveis-de-ambiente).

## 5. Teste pelo domínio da plataforma

Toda instalação nasce com um domínio automático. Use ele para testar tudo — login, escrita no banco, upload, integração externa — **antes** de qualquer mudança de DNS.

## 6. Vire o tráfego

Só agora aponte o seu domínio: [Domínios & SSL](https://w8hub.com.br/docs/dominios-e-ssl). O SSL é emitido automaticamente.

Se o DNS estiver na Cloudflare, a [integração](https://w8hub.com.br/docs/integracoes-cloudflare) cria o registro para você.

## 7. Depois de virar

- Faça uma **importação final** dos dados que entraram na origem depois do último dump, se houver.
- Acompanhe [métricas](https://w8hub.com.br/docs/metricas) e [registros](https://w8hub.com.br/docs/logs) nas primeiras horas.
- Só desligue o serviço antigo quando o DNS tiver propagado por completo — costuma levar algumas horas.

## O que muda para melhor

Preço em reais, sem variação cambial. Dados no Brasil, sob LGPD. E suporte em português com gente que abre a sua instalação junto com você.
