For me, one of the big catches is that you have a single point of failure. Dokku doesn't run over multiple VMs you have. It's on a VM. If that VM goes down, you're down.
I think one of the selling points of Heroku is that if the box you're running on goes down, your service will just be started on another box and traffic will be routed there and you don't need to do anything.
I think one of the selling points of Heroku is that if the box you're running on goes down, your service will just be started on another box and traffic will be routed there and you don't need to do anything.