Migrate from DigitalOcean App Platform to Plexivo
Move App Platform services, workers, environment variables, a managed PostgreSQL database and domains to Plexivo App Runner and Plexivo Postgres.
This guide moves the components of a DigitalOcean App Platform app to Plexivo App Runner, its PostgreSQL database to Plexivo Postgres, and your domain to Plexivo. Your App Platform app keeps serving until you change DNS, so you can go back at any point before that.
App Platform and Plexivo, side by side#
| On App Platform | On Plexivo |
|---|---|
| Service with a public route | A public Plexivo App Runner app, from Git or a container image. |
| Internal service | A private Plexivo App Runner app, with the callers you allow. |
| Worker | A private app that also accepts connections on PORT; see Workers. Or a Deployment on Plexivo Kubernetes. |
| Pre-deploy and post-deploy jobs | No separate step. Run migrations as your app starts, or from your computer before you deploy. |
| Scheduled jobs | A CronJob on Plexivo Kubernetes, from the Startup plan. |
| Static site | A Plexivo App Runner app: Plexivo serves what your build outputs. See Builds. |
| Buildpacks and Dockerfiles | Your Dockerfile, or Plexivo detects your language. |
App spec (.do/app.yaml) | Not read. Create each component in Plexivo, or ask Plexivo AI to plan them from your repository. |
| App-level and component environment variables | The app’s Environment tab, and Plexivo Secrets for values several apps share. |
| Health checks | The app’s health check. |
| Managed or dev PostgreSQL database | Plexivo Postgres. Plexivo copies it for you. |
| Managed MySQL | Plexivo MySQL; see Move a MySQL database. |
| Managed Redis-compatible database | Plexivo Cache, Redis-compatible. |
| Domains | Custom domains, with certificates Plexivo issues and renews. |
Before you begin#
- A Plexivo account.
- Your code on GitHub, GitLab or Bitbucket, or a public container image of it.
- Access to your domain’s DNS settings.
Move your app#
- Take stock. List each component and its type, its build and run commands, its environment variables, its jobs and its domains.
doctl apps spec getprints the whole app spec. Note your PostgreSQL version. - Create the app. In the Plexivo console, choose Create, then Plexivo App Runner, connect your Git provider, pick the repository and branch, choose a size, and deploy. See Deploy from Git. Or ask Plexivo AI with the repository link: it plans the app and its database with the monthly price, and creates nothing until you approve.
- Copy your environment. Add each variable on the app’s Environment tab, then apply. Values you encrypted on App Platform are not shown again, so copy them from where you keep them. Leave out database URLs: Plexivo sets them when you connect a database or cache. See Environment and secrets.
- Move the database. Create an empty Plexivo Postgres database. In Migrations, choose New migration, then Other PostgreSQL, and paste the database’s public connection string. If the database accepts only trusted sources, ask support for Plexivo’s outbound address first. Stop writes before the copy starts, then connect the new database on the app’s Environment tab. See Move a PostgreSQL database.
- Add your domain. On the app’s Domains tab, add your hostname and prove you own it with the
TXTrecord Plexivo shows. Your traffic stays on App Platform meanwhile. See Custom domains. - Switch DNS. Test the app on its
plexivo.appaddress first. Then replace the record that points at App Platform with the routing record Plexivo shows. Plexivo issues the certificate on the first HTTPS request once the hostname routes. - Check it. On the Domains tab, Routing reads Ready on Plexivo and the certificate is valid. Open your site, run your usual checks, and watch the app’s Logs and Metrics.
- Retire App Platform. Keep the old app for a few days as your way back. When you are satisfied, delete it and its database.
Database TLS#
Plexivo Postgres accepts only TLS connections, and your app receives the CA certificate as DATABASE_CA_CERT. If your code turned off certificate checks, point it at the CA certificate instead. See TLS.
Free migration help#
Prefer a hand? Tell us what you run, and Plexivo support plans the move with you. Ask for free migration help. Moving a paid workload? You may also be able to apply for migration credits.
Next steps#
DigitalOcean is a trademark of its owner. Plexivo is not affiliated with, endorsed or sponsored by DigitalOcean.
Updated 2 November 2026