Introducing DigitalOcean App Platform: reimagining PaaS to make it simpler for you to build, deploy, and scale apps

Posted 2020-10-06 
blog header

It’s every developer’s dream to simply write code, click a button, and then automatically deploy and run their code at scale for millions or even billions of users.


There’s an entire category of products commonly known as platform as a service (PaaS) that endeavors to make this possible. But, so far, these services have largely fallen short of what developers need. Many of our customers have come to DigitalOcean after their PaaS became too expensive, or after hitting various limitations.

But the dream of PaaS lives on. Even though Kubernetes has emerged as a middle ground between PaaS’s convenience and the control of infrastructure as a service (IaaS), it is still somewhat complicated.

It’s with all of this context in mind that we’re excited to introduce our take on a modern PaaS today: DigitalOcean App Platform.

With the App Platform, you can build, deploy, and scale apps and static sites quickly and easily — much as you can with other PaaS solutions — by simply pointing to your GitHub repository. Because we own our infrastructure, your costs on the App Platform are significantly lower than on other providers. Built on DigitalOcean Kubernetes, the App Platform brings the power, scale, and flexibility of Kubernetes without exposing you to any of its complexity. Additionally, the App Platform is built on open standards, providing more visibility into the underlying infrastructure than in a typical closed PaaS environment. The App Platform lets you choose how you want to scale your apps, either through the fully managed, built-in scaling mechanism, or by taking more control of your infrastructure setup.

Three key benefits of the App Platform

Fully managed solution

  • The App Platform gives you the power to quickly and easily build, deploy, manage, and scale apps. It keeps your apps secure by default as we create, manage, and renew your SSL certificates while protecting your apps from DDoS attacks.
  • It’s fully managed, which means we handle provisioning and managing infrastructure, databases, operating systems, application runtimes, and other dependencies. When we were building the App Platform, we analyzed all the pain points users encounter while building apps on our infrastructure, resulting in us abstracting away many of the tasks so that you can push code to production in just a few clicks.

Maximize developer productivity

  • The App Platform supports many popular languages and frameworks out of the box, which includes: Python, Node.js, Go, PHP, Ruby, Hugo, and static sites. If you have apps in other languages, you can quickly deploy using the App Platform by providing the appropriate Dockerfile in the source repo.
  • You can deploy the source code directly from your GitHub repositories (support for GitLab and Bitbucket is coming soon). You can also enable ‘Autodeploy on Push,’ which automatically re-deploys the app each time you push to the branch containing the source code.
  • The App Platform is one of the few PaaS products built on a shared Kubernetes platform. We automatically analyze your code, create containers, and run them on Kubernetes clusters. Since we embrace open, cloud-native standards, there’s little to no code customization needed to use the App Platform. Don’t forget to sign up for our engineering team’s session at deploy (DigitalOcean’s virtual user conference on November 10) to learn how we built this fully managed cloud application platform on Kubernetes. 

Scale apps, not costs

  • A common complaint about pure-play PaaS products is that they are inexpensive, to begin with, but become incredibly pricey as you scale apps. One of the reasons behind this is that these PaaS products run on someone else's infrastructure, and they often need to pass those costs on to you. App Platform runs on DigitalOcean’s infrastructure, and since we own the infrastructure, we can keep the costs low to optimize costs and resources as you scale. 
  • To efficiently handle traffic spikes (planned or unplanned), the App Platform lets you scale apps horizontally (i.e., add more instances that serve your app) and vertically (beef up the instances with more CPU and memory resources).
  • We keep your apps available during vertical and horizontal scaling, and each time you roll out changes to the app, resulting in zero downtime deployments.

Check out the App Platform in action and learn how easy it is to build, deploy, and scale apps.

Predictable and affordable pricing

“Simplicity in all we do” is one of the core values at DigitalOcean. This includes all aspects of our product portfolio: UX, API, CLI, docs, billing, and pricing. Like all DigitalOcean products, the App Platform provides predictable, easy-to-understand pricing that allows you to control costs to prevent surprise bills. It has three pricing tiers:

Starter - starts at $0/month, Basic - starts at $5/month, Professional - starts at $12/month

*You can build and deploy three static sites for free on the Starter tier, and each additional static site will be charged $3/month. The Starter tier is great for static sites, but it does not contain any compute resources, and so for dynamic apps, you can use the Basic tier and Professional tier. If your dynamic app has static site components, then all of them will be deployed at no additional charge on the Basic and Professional tiers. This is in addition to the three free static sites you get as part of the Starter tier.

Unsure where to begin? Most users start at the Basic tier. Click here to learn more about the capabilities of each tier, pricing plans, and add-ons. 

What can you build with the App Platform?

The possibilities are endless with App Platform, but the typical use cases include the following: 

  • Web apps
  • Static sites
  • APIs
  • Background workers

Regional availability

To provide the best experience for our customers, we plan to do a phased rollout of the App Platform. Starting today, you can deploy apps using the App Platform in the FRA (Frankfurt), NYC (New York), and AMS (Amsterdam) regions. Please refer to our release notes for the most up-to-date information on the App Platform availability in other regions. 

Upcoming features

We are just getting started with the App Platform so keep an eye out as we introduce new features regularly. Here’s a glimpse of what’s coming soon:

  • Insights alerting that will alert you (via email or Slack) when metrics you are tracking under insights (e.g., CPU usage, memory) exceed a threshold
  • Make it more straightforward to add custom domains
  • Enhance the jobs feature so that you can add cron jobs (i.e. jobs that run on a schedule you specify)
  • Support for GitLab and Bitbucket so that you can deploy code from your repositories on these services
  • Auto-scaling to make it even easier to handle traffic spikes
  • Deployment previews for reviewing changes before they go live
  • ‘Bring-your-own Container’ for deploying your pre-built containers
  • Integration with DigitalOcean Virtual Private Cloud (VPC)
  • Ability to add persistent storage
  • User notifications that keep you informed of lifecycle updates to your application, such as new deployments

Between six and eight million businesses are started every year, and many of them will utilize the cloud in some shape or form. With the App Platform, we are democratizing the cloud by making it a lot easier and faster to build, deploy, and scale apps. This will enable developers, entrepreneurs, and startups worldwide to spend more time building their business and pursuing their dreams, instead of managing infrastructure. 

 

Check out App Platform, read the docs, and try out this sample app for an RSS feed aggregator (here are the repos for frontend and API), and let us know what you think!

 

If you’d like to have a conversation about using DigitalOcean and App Platform in your business, please feel free to contact our sales team.

Happy coding!

Apurva Joshi (AJ),
VP of Products at DigitalOcean