DigitalOcean App Platform is a platform as a service (PaaS) for building, deploying, and scaling web applications and APIs. Use the following documentation structure to identify available capabilities and where to learn more about them.
- Choosing a Plan: Guidance on choosing the right App Platform plan for your app's components based on usage patterns and needs.
- Platform Upgrade Policy: App Platform's policies for rollout of new stacks, deprecation of old stacks, and timing.
- Availability: Regional datacenter availability for App Platform.
- Features: Overview of App Platform features, including automatic builds, scaling, monitoring, and database integration.
- Intro FAQ: Frequently asked questions about App Platform, including how it works and deployment options.
- Limits: Limits and known issues for App Platform, including storage, build, and deployment limits.
- Maintenance: App Platform's maintenance policy, including redeployment and notification procedures.
- Pricing: Pricing for App Platform containers and additional resources.
- Quickstart: Get your source code live on App Platform in a few minutes with this step-by-step quickstart guide.
- Deploy Etherpad: Learn how to deploy the official Etherpad collaborative editor to App Platform and connect it to a managed PostgreSQL database.
- Deploy RSS Reader: Build and deploy a multi-component sample RSS reader app (Django backend, React frontend) to App Platform.
- Deploy Sample Apps: Fork and launch sample applications for several popular programming languages on App Platform.
- Sample Apps: Sample applications to get started on DigitalOcean App Platform.
- Add Deploy DO Button: Add a "Deploy to DigitalOcean" button to your GitHub or GitLab repository so users can launch your app on App Platform with one click.
- Add IP Address: Add static IP addresses to your app for consistent routing of ingress and egress traffic.
- Archive & Restore: Archive apps to store their data and configuration, stop charges, and restore them when needed.
- Build Locally: Build app components locally using the same build process as App Platform for faster development and CI/CD integration.
- Build & Run Commands: Add, edit, and delete buildtime and runtime commands for your application components.
- Cache Content: Improve your app's performance by caching content with Cache-Control headers.
- Change Region: Redeploy an existing App Platform app to a different datacenter region by updating the app's spec.
- Change Stack: Upgrade your app's stack to take advantage of new features, security updates, or maintain compatibility.
- Configure CORS Policies: Enable cross-origin resource sharing (CORS) in App Platform to control how your app's resources are accessed by other domains.
- Configure HTTP/2: Configure your app to receive HTTP/2 traffic, enabling gRPC and other HTTP/2 features.
- Configure Termination: Configure the amount of time app components have to shut down after receiving a termination command for clean-up tasks.
- Connect PG Pools: Connect your app to PostgreSQL database connection pools to improve performance and resource usage.
- Console: Access the console for app components to troubleshoot issues and run commands in their container.
- Create Alerts: Create alert policies and set up monitoring for app or resource events.
- Create Apps: Build and deploy apps on push in the cloud with App Platform, supporting multiple source code management services.
- Deploy from Container Images: Deploy an application using a container image stored in your DigitalOcean Container Registry or other supported registries.
- Deploy from GitHub Actions: Deploy applications directly from your GitHub repository using GitHub Actions workflows.
- Deploy from Monorepo: Deploy applications from a monorepo setup, managing multiple components within a single repository.
- Destroy App: Destroy an App Platform app and all associated resources, with options for confirmation and data retention.
- Forward Logs: Forward your app's logs to a third-party service for advanced log management and analysis.
- Maintenance Mode: Enable maintenance mode for your app to restrict access while performing updates or troubleshooting.
- Manage Components: Manage your app's components, including adding, removing, and updating services, jobs, and static sites.
- Manage Data Storage: Manage data storage options for your app, including volumes and database attachments.
- Manage Databases: Manage database resources for your app, including creating, deleting, and configuring databases.
- Manage Deployments: Manage your app's deployments, including viewing deployment status, logs, and rollback options.
- Manage Domains: Manage custom domains for your app, including adding, removing, and configuring domain settings.
- Manage Functions: Manage serverless functions in your app, including creating, updating, and deleting functions.
- Manage Health Checks: Configure and manage health checks for your app's components to ensure they are running correctly.
- Manage Internal Routing: Manage internal routing between components of your app, including setting up service discovery and load balancing.
- Manage Jobs: Manage background jobs in your app, including creating, updating, and deleting jobs.
- Manage Networking: Manage networking settings for your app, including VPC, firewall, and load balancer configurations.
- Manage Observability: Manage observability features for your app, including monitoring, logging, and alerting.
- Manage Services: Manage the services that make up your app, including web services, worker services, and static sites.
- Manage Settings: Manage app settings and configuration options, including environment variables and build settings.
- Manage Source Repo: Manage the source repository for your app, including connecting to GitHub or GitLab.
- Manage Static Sites: Manage static sites in your app, including deploying, updating, and configuring static content.
- Manage Time Zone: Configure the time zone settings for your app and its components.
- Manage Workers: Manage worker processes in your app, including scaling, configuration, and monitoring.
- Migrate Node.js Buildpack: Migrate your app to the new Node.js buildpack to ensure compatibility and take advantage of new features.
- Restart & Rebuild App: Restart and rebuild your app to apply changes or recover from issues.
- Scale App: Scale your app's components up or down to adjust to changing traffic or resource requirements.
- Store Data: Store and manage data for your app using DigitalOcean's managed databases or object storage.
- Update App Spec: Update the specification of your app to change its configuration, resources, or deployment settings.
- Upgrade Buildpacks: Upgrade the buildpacks used by your app to the latest versions for improved performance and security.
- URL Rewrites: Configure URL rewrites for your app to control how incoming requests are mapped to your app's components.
- Use Environment Variables: Use environment variables in your app's configuration to manage sensitive data and settings.
- View Insights: View performance insights and analytics for your app to monitor its health and usage.
- View Logs: View and manage your app's logs to troubleshoot issues and monitor activity.
- App Spec: Reference for the format of app configuration files (app specs) for App Platform, including YAML examples and configuration options.
- Buildpacks:
- Aptfile: Use the Aptfile buildpack to declare Ubuntu system-level packages for your app's build process.
- Go: Use the Go buildpack for Go applications, including detection files, version selection, and build limits.
- Hugo: Use the Hugo buildpack for static site generation, including detection files and version selection.
- Node.js: Use the Node.js buildpack for Node.js and JavaScript framework apps, including detection files and version selection.
- PHP: Use the PHP buildpack for PHP and PHP framework apps, including detection files and version selection.
- Python: Use the Python buildpack for Python and Python framework apps, including detection files and version selection.
- Ruby: Use the Ruby buildpack for Ruby and Ruby on Rails apps, including detection files and version selection.
- Legacy Node.js: Deprecated Node.js buildpack; see migration guide for upgrading to the new buildpack.
- Dev Config: Reference for the format of dev-config.yaml, used to configure local App Platform builds with doctl.
- Dockerfile: Reference for using Dockerfiles to build App Platform apps, including configuration and best practices.
- Error Codes: Reference for error codes and troubleshooting steps in App Platform.
- App Platform Support: Get help with technical support and answers to frequently asked questions.