DigitalOcean Enters PaaS With App Platform
Specifically targeted at developers, DigitalOcean App Platform aims to make application development a matter of point-and-click. This new offering fills the gap between DigitalOcean Droplets and Kuberbetes-based Infrastructure-as-a-Service products.
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.
DigitalOcean App Platform is a fully managed solution to build, deploy, manage, and scale apps. It supports sites created using a number of popular languages, including Python, Node.js, Go, PHP, and Ruby, as well as static sites.
In a video, DigitalOcean showed how App Platform is able to automatically recognize the environment used to build an app by just providing the URL to its GitHub repo. From there, says DigitalOcean, App Platform is able to provision and manage infrastructure, databases, operating systems, application runtimes, and other dependencies required by the app with only minor confiuration.
InfoQ has taken the chance to speak with DigitalOcean vice president of products Apurva Joshi to learn more.
InfoQ: Why DigitalOcean App Platform? Why Now?
Joshi: With DigitalOcean App Platform, you can build, deploy, and scale apps and static sites quickly and easily by simply pointing to your Github repository. Because we own our infrastructure, your costs on the App Platform are significantly lower & more predictable than on other providers. Built on DigitalOcean Kubernetes, the App Platform brings the power, scale, and flexibility of Kubernetes without exposing users 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.
However, unlike other PaaS providers, we wanted to create a platform to specifically meet an underserved group’s needs: developers at startups and SMBs. Our most recent Currents report found that 65% of founders find maintaining infrastructure to be a top barrier to entry for the new businesses. Our goal with the App Platform was to take the burden of infrastructure management off developers. Hence, they have more time to focus on writing awesome code while relying on DigitalOcean’s value proposition of simplicity, affordable & predictable pricing.
InfoQ: Could you please clarify the relationship between DigitalOcean App Platform and DigitalOcean Kubernetes? When should a company choose one or the other? Do you offer any upgrade path from App Platform to Kubernetes in case this can best serve a company's growing scaling needs?
Joshi: App Platform is built on DigitalOcean Kubernetes, giving users all the inherent benefits of Kubernetes – power, scale, flexibility – right away. We hear from our customers that cloud-native technologies powered by Kubernetes are the tools of choice, so we wanted to make sure the App Platform had a foundation of open source. While providing additional layers of abstractions and turnkey features like certificate management, DDOS protection, global load balancing, auto builds, CDN, Security Isolation, etc. for no additional cost.
The decision between choosing DigitalOcean App Platform and DigitalOcean Kubernetes essentially boils down to convenience vs. control. We have learned that while developers love our simplicity during their cloud journey, they also value choice. The idea is to serve both desires. The convenience of the App Platform provides productivity improvements, while Kubernetes offers full control.
As outlined above, it is not necessarily an upgrade or downgrade argument, as both of them will scale to one’s needs. The beauty of containers is that by definition, they are platform agnostic, thus making it super simple for developers to switch between one platform to another (even switching the cloud providers). With that said, we have plans to make the transition from the DigitalOcean App Platform to DigitalOcean Kubernetes (and vice versa) even smoother in the future. InfoQ: In which ways does relying on open standards allow developers to get more visibility into the underlying infrastructure?
Joshi: Platforms built on open source automatically provide users with more flexibility and visibility when it comes to infrastructure. They also benefit from the innovations that are continually being rolled out across the open source community.
The App Platform runs on a fleet of multi-tenant Kubernetes (DOKS) clusters where Workload isolation is powered by gVisor & Network isolation is provided using Cilium. We perform Auto-build using Build-packs and Kaniko, while Cloudflare powers global CDN, SSL & DDOS protection. For Ingress with path-based routing, we are using Istio and Envoy.
For App monitoring and alerting we use Prometheus & App logging is using Fluent Bit. This framework and platform allow developers to build the foundation of their applications on an open system and understand future innovations without worrying about vendor lock-in.
All the assumptions made about the underlying platform are open and built by the community providing users with peace of mind, trust & the ability to replicate the platform without breaking the foundation of one’s application paradigm. Moreover, it allows developers to contribute to the core open source technologies to enhance further the App Platform’s ability to cater to their specific needs (as the platform upgrades its underlying technologies stack to the latest versions). InfoQ: What's on DigitalOcean App Platform roadmap?
Joshi: Right now, we’re excited to get more developers using the App Platform. Today, the platform is available in three tiers: Starter to build and deploy three static sites for free, Basic to prototype apps, and Professional to deploy production apps. Over the next few months, we plan to include improvements to the custom domain configuration, support for code deployment from Gitlab and Bitbucket, support for user-supplied containers, post-deploy jobs auto-scaling, metrics-oriented alerts, notifications, etc.
DigitalOcean App Platform basic tier is free for static sites, with a basic and a professional tier costing respectively $5 and $10. To get started with App Platform, head to the docs and try out the service.