Vindo do Heroku
Mova um app do Heroku para um servidor seu, Dockerfile ou buildpacks, Procfile, config vars, Postgres e Redis, sem lock-in.
O jeito rápido: cole um token de API do Heroku no importador e a Railyard traz os processos, variáveis de ambiente, bancos de dados com seus dados, e domínios. Os passos abaixo mostram o que isso faz por você, e como fazer na mão.
Por que as equipes deixam o Heroku
A conta cresce a cada dyno, a cada add-on e a cada pessoa da equipe, e é cobrada em uma moeda que talvez você nem ganhe. O free tier acabou. A Salesforce define o roadmap. E quando você sai, você leva seu código e nada mais: a plataforma nunca foi sua para levar embora.
O Railyard te dá o mesmo fluxo de push-to-deploy em um servidor Linux na sua própria conta de nuvem. Seu provedor cobra você direto, no preço dele. Cancele o Railyard e o app continua rodando.
O que vai com você
- Seu repositório, sem mudanças. O Railyard builda a partir de um Dockerfile ou de Cloud Native Buildpacks (os mesmos buildpacks que o Heroku usa), então a maioria dos apps não precisa de nenhuma alteração.
- Seu Procfile.
web,worker,releasee qualquer outro tipo de processo são lidos como estão. - Suas config vars. Cole elas; vão se tornar as variáveis de ambiente do app.
- Heroku Postgres e Heroku Data for Redis mapeiam para addons gerenciados de Postgres e Redis. O Railyard provisiona e injeta
DATABASE_URL/REDIS_URLpara você. - Domínios personalizados e TLS automático.
A migração
- Aponte o Railyard para um servidor. Conecte um que você já tem, ou deixe o Railyard provisionar um na sua conta DigitalOcean / Hetzner / AWS.
- Adicione seu repositório e escolha seu build method. Se seu app já faz deploy no Heroku com buildpacks, escolha buildpacks e não mude nada.
- Traga sua configuração. Cole suas config vars. Conecte Postgres e Redis; o Railyard já liga as URLs.
- Faça o deploy. Acompanhe o build em tempo real. Abra a URL temporária e navegue pelo app.
- Mova seus dados.
heroku pg:backups:capturee depoispg:backups:download, e restaure o dump no addon de Postgres gerenciado. O mesmo para o Redis, se você persiste dados nele. - Troque o DNS. Seu app no Heroku continua servindo até o registro mudar. Não existe uma janela em que nada está no ar. Depois,
heroku apps:destroye cancele os add-ons.
O que é diferente
Agora você é responsável por um servidor, mas o Railyard provisiona ele, mantém o Docker atualizado, roda os deploys e cuida de TLS, backups e rollbacks. O que você ganha com isso: nenhuma margem em cima do compute, nenhum lock-in de fornecedor, e uma máquina que você pode apontar para qualquer nuvem que quiser.