Speed Up App Deployments

Posted October 12, 2020 2.3k views
Ruby on RailsRubyDigitalOcean App PlatformNeeds Product Answer

I’m using the new Apps features with a Ruby on Rails 6 application. Deployments are taking 10-20 minutes (sometimes 30 minutes) when they were taking about 1-2 minutes on Heroku (it’s a big application).

Right now during business hours I have an App that is deploying and the application has been down for about 20-45 minutes (as now there a ruby bug causing it to continuously deploy).

At this point I’m about to switch the application back to Heroku because we simply can’t run a business with a crashing server.

Has anyone else had this experience and if so is there any solution?

edited by bobbyiliev
  • I just experienced a 40 min build and as far as I could tell most of that time was spent unpacking the rootfs and snapshotting the filesystem afterwards. My actual build only took a few min. Is is possible builds are being run on the same machine size that’s running the app? It would be nice if there was a way to specify the build machine type if so.

  • I’m noticing the exact same issues as others here.

    Our compile time is longer than a normal build (yay, old JS dependencies!) but a massive chunk of time appears to be taken up by shifting the compiled app into Docker containers.

    We’re having internal discussions around moving to Heroku (or similar) because we keep running into little issues with the App platform and can’t see a roadmap for improvements.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
4 answers

@support - these deploys are BRUTAL. Please. Please.

  • I had similar experience. i really loved using DO with its quality vps service. but app platform is unbearably slow , i thought it might be one time thing, but it keeps slowing my deployments..

    i moved to another provisioning service. feels like app platform is a half baked solution

@brodyhoskins 👋

We definitely appreciate your feedback here and realize it’s not yet optimal. We’re aware of some scenarios where build performance can be slow, as you’re describing. We will be continuously shipping improvements for this as we go forward, but can’t guarantee a specific timeline for your case yet.

We do guarantee zero-downtime deployments though, so your app shouldn’t be going down during a new deployment. If that’s the case, please reach out to DO Support and we can take a closer look together. If the problem you’re hitting is that your app initially deployed successfully but is not responding to traffic due to an in-app issue, then I’d suggest creating a staging app that deploys from a staging branch while you make changes and validate your app is functioning before deploying to your production app (by merging to your default branch for example).

Thanks for using the App Platform and providing feedback to us along the way, we definitely appreciate it and will continue to improve build performance and the platform in general.

  • I have the same issue. My app is brand new and does not have many features yet. Every deploy takes about 8-10 minutes, which definitely painful, maybe enough for me to use a different solution.

    I see that each time all of the gems are installed, so I’m guessing it’s related to how the docker image is built.

    It would be great to know if there will be vast improvements in the near future. It’s especially difficult developing a new app where stakeholders want to collaborate and see updates.

  • i am considering deploy a production app now on digitalocean apps (using for staging so far) - but then if i have a critical bug that gets deployed in 10-20 minutes that’s a big deal breaker for me. even one-two minutes wait is a bummer the poor docker era had introduced… git pull & touch tmp/restart.txt is usually all i need.

    any updates? hope here?

Really disappointed in the ability build of digitalocean app platform, it extremly slow.It pending 40 minutes at add label process…the problem from 2020 has not improved yet

Alt text of image

  • yeah, same here. Looks like “more focus on build” as against their punchline “more focus on code”

  • I’m getting this now with my apps. A small code tweak takes 5 minutes to deploy (presumably due to caching), but if I update a dependency it will take 30-40 minutes to deploy. The wait is entirely due to the Docker stuff, it will sit at “Adding label ‘io.buildpacks.project.metadata’” in particular for 10-15 minutes, like in the above screenshot.

    The tier I’m using allows 400 build minutes per month, which is plenty if builds are 5 minutes, but if each build is going to take 40 minutes then I will need to find another service.

I had the same issue. So many unnecessary build steps are taken place. Even a simple react app took 30 mins to build which takes like 2-3 min on my system. Also need something like AWS Fargate to build as sometimes we need higher resources during build time.