Ask HN: So you moved off Heroku, where did you go?

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • coolify

    An open-source & self-hostable Heroku / Netlify / Vercel alternative.

  • I am using Coolify (https://coolify.io), an open source self-hosted PaaS which is a relatively newer kid on the block compared to Dokku and CapRover. I tried both of these and I just didn't like how they were, always had some problem or another.

    In contrast, Coolify has a great GUI that abstracts away the most common things about PaaS hosting, like connecting to GitHub automatically for git push deploys and having support for Heroku style buildpacks as well as Docker. I've been very happy with it, the creator has a Discord and responds to issues very quickly.

    With regards to non-self-hosted options, I did try out Render, Fly.io and Railway but I found that their free servers were too anemic. I was compiling a Rust backend and it simply could not compile on their free servers. On Hetzner, for 5 bucks I could get a 2 AMD vCPU and 2 GB RAM machine that was sufficient to compile my Rust apps in a way that the non-self-hosted ones were not. I have a JS frontend app that works fine though but I wanted to keep everything under the same VPS, plus I can run other types of self-hosted services on it too, like Plausible analytics and a Ghost blog. I'm not sure if those are allowed on Railway etc.

  • templates

    Railway starters (by railwayapp)

  • We moved from Heroku to GCP after approximately two years of using Heroku.

    The move worked out incredibly smoothly and has saved us money and allowed us to "modernise" our infrastructure to take advantage of some of the newer trends in Infrastructure and Security.

    To address your direct questions:

    1. Not very long. We were running a NodeJS app with a web layer and several background workers. We were able to get this running on a Google Compute Engine VM in about 1 day using Packer. The whole migration process took about two weeks start to finish.

    2. Our team is relatively experienced and had experience with all three major platforms and Kubernetes (although we chose not to use Kube in this case). We are definitely a team of developers, not sysadmins though. This means we had to learn some new things particularly about tuning NodeJS apps on raw linux.

    3. I don't think we learnt too much (other than the undocumented rough edges of both platforms) but it was definitely worth it for financial and quality reasons.

    4. It's a relatively hard metric to calculate when the company is growing user base and features quickly - but I would estimate it at around 50%.

    5. 1 app with around 5000 requests per second. NodeJS / Typescript / Rust

    6. If you have only ever used Heroku I think it would be worth getting comfortable with Containers (Docker basically) and making your app run in a container. From there you have tools like Railway (https://railway.app) or Cloud66 (https://www.cloud66.com) that can do most of the rest for you.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • eien

    Command line tool that manages and deploys apps to any Kubernetes cluster and abstracts all Kubernetes concepts from you.

  • Yes, exactly this is my point. I use kubernetes as a framework for infrastructure management which has all concepts I need.

    Here is the github link https://github.com/alhafoudh/eien

    I will push what I have today.

  • honey-swarm

    Setup a full fledged portainer + Traefik swam cluster with ansible playbooks and a few VPS

  • I moved to CapRover, and shortly after ended up moving to Portainer, mostly because CapRover does not have very good collaborative environment (eg. A single password for access)

    With 20Eur a month and a VPS on Digital Ocean you can get quite far.

    I also made a small project to spin up a PaaS like environment with docker swarm, Portainer and Traefik if you're interested: https://github.com/sergioisidoro/honey-swarm

  • django-fly.io-example-project

    Discontinued Example Django project to test the deployment on Fly.io

  • I'm planning the migration with my Django side projects from heroku to fly as well. Fly has a special org on GH with example projects, but the one with Django is empty. I created a small test repo to see how Fly works. hands on. Thought I'd share.

    https://github.com/tomwojcik/django-fly.io-example-project

  • Dokku

    A docker-powered PaaS that helps you build and manage the lifecycle of applications

  • aws-lambda-java-libs

    Official mirror for interface definitions and helper classes for Java code running on the AWS Lambda platform.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • elastic-beanstalk-roadmap

    AWS Elastic Beanstalk roadmap

  • aws-appsync-community

    The AWS AppSync community

  • apprunner-roadmap

    This is the public roadmap for AWS App Runner.

  • free-for-dev

    A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev

  • I have moved a Rails and Go app to https://northflank.com. I have my Rails app running in their free project (limited to two services and 2 jobs) and my Go app in a paid project. I find the pricing to be very reasonable and considerably cheaper than Heroku.

    I was looking for somewhere I could run web services and cron jobs both in the same place.

    They have a Heroku importer, however I think you need to ask to have it turned on. I found that it was easier for me to build docker images for my apps and use a 'build service' instead however. YMMV

    I found their support to be very responsive and enjoy using their UI. The UI, builds and so on all feel very fast.

    Northflank can run databases, however for my databases I've been running them on ElephantSQL for some time (https://www.elephantsql.com) - even when I was on Heroku.

    Free for Dev's PaaS list is worth a review: https://free-for.dev/#/?id=paas

  • m3o-app

    M3O App template

  • I use the m3o.com/app service (because I wrote it). It's a simple interface on top of Google Cloud Run that gives me back a *.m3o.app url. I can run it like `m3o app run --name=helloworld --repo=https://github.com/m3o/m3o-app` and that's it.

  • CapRover

    Scalable PaaS (automated Docker+nginx) - aka Heroku on Steroids

  • https://github.com/caprover/caprover/issues/661#issuecomment...

    Tangentially I was looking at Render.com the other day and they also don't support zero downtime deployments if you have a mounted volume, so it's not very uncommon even on cloud platforms.

    As for restarts, I didn't have that problem yet, I believe CapRover adds `restart: always` to all the running containers so they should automatically boot. You might want to check out the logs of the containers that don't restart or just always hard restart the server after a Docker update.

  • sst

    Build modern full-stack applications on AWS

  • one question - u deploy to individual servers right ? can u target deploy to a kubernetes platform. Like EKS? I couldnt find it in your docs.

    Because one of the cool things about Heroku is scale-up. A cool project here is https://sst.dev/. Would love to see EKS/GKE native integration there.

    Skimming what HN has said over the past year, shows many negatives and very few positives: https://hn.algolia.com/?dateRange=pastYear&page=0&prefix=tru...

    (probable) TL;DR

    - Security issues

  • PasswordPusher

    🔐 An application to securely communicate passwords over the web. Passwords automatically expire after a certain number of views and/or time has passed. Track who, what and when.

  • I'm considering the same for [pwpush.com](https://pwpush.com). Paid hosting with lot of traffic.

    DO App Platform is better than last year but still a bit quirky. I haven't found a better alternative that is more 1) mature, 2) reliable, 3) paid/supported, 4) enough features.

  • habitapper.com

    repository for habitapper.com -- feedback loop based habit tracking

  • idle-gc

    Idle-period garbage collection for Crystal. Reduce memory usage.

  • sidekiq

    Sidekiq worker on Render (by render-examples)

  • I tried many PaaS providers and ended up settling on Render, mostly because of its minimal boilerplate and lack of proprietary tech or vendor lock-in. There is a custom infrastructure-as-code YAML file, but it is optional and pretty nice in its own right, anyway. I get the sense that the Render team cares about DX and doing things the right way for the long term. Moving there from Heroku is simple as the platforms have similar capabilities and there is a migration guide - a day or two unless you are deeply integrated into Heroku’s buildpacks, etc.

    Heroku recently removed their free tier. Render has a free tier that is pretty generous and very usable. For paid plans, Render pricing is roughly equivalent to Heroku. However, I find Render’s pricing significantly easier to understand and thus more friendly. Heroku has pricing tiers with varying features and sometimes you have to upgrade to get a feature even if you don’t need more resources. Additionally, Heroku can be vague about some of their specs, particularly when it comes to how much CPU you are promised. Render, on the other hand, gives the same features to all paid plans and then the resources just scale up and out. I much prefer Render’s pricing model, even though for me the cost is about the same.

    My one major gripe about Render is that they don’t have a CLI. I find a CLI to be a very important part of any PaaS. Heroku has a great CLI, Render doesn’t, and the feature request to create one has been open for three years. Clearly it was not a priority for them. That said, the ticket did just get marked as In Progress a few days ago, so I am optimistic, but we will have to see where that leads.

    https://render.com/

    https://feedback.render.com/features/p/render-cli

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts