DigitalOcean launches App Platform

I see DigitalOcean has finally launched their App Platform product which I assume is their implementation of the NanoBox acquisition.

Looks promising, only available in 3 DC’s at the moment with more launching soon. A replacement for Amazon Elastic Beanstalk? Pricing looks good, yet to try it out. Docker-file compatible.

Would be good to see this implemented with Wappler.

Was already looking at it :slight_smile: as it seems very promising indeed.

They are also going the same direction as Heroku. Actually even use some of the Heroku buildpacks to boot up ready to go configurations.

3 Likes

has anyone been able to deploy a Wappler NodeJS project successfully on DO App Platform?

1 Like

@George did you ever have chance to look at App Platform (with or without Docker)?

I tried a pure plain NodeJS project. Connected to a GitHub repo.

When you push to the GitHub repo - it gets auto deployed as digital ocean app. Very easy.
This is how the Do apps work - you just connect a GitHub repo to them and you are done!

One minor thing was that in my package.json I had to adjust the start script to be:

"scripts": {
    "test": "nyc mocha",
    "start": "node ./node_modules/nodemon/bin/nodemon.js ./index.js"
  },

Everything else worked just fine. and on each GitHub push a new build of the app is published.
Also connected a PostgreSQL database that worked nicely with the database manager.

This is the test site:

https://test-do-node-app-9muab.ondigitalocean.app/

deploy does takes like 5 mins as it is doing an full npm install, docker image creation and pushing to its won repository. So it does creates a docker image but you don’t have to take care of it.

3 Likes

George, I’m testing this out today…does this change persist across Wappler updates?

Yes we only manipulate dependencies afterwards in package.json and only add required dependencies while leaving the rest intact.

Great.

Have you done this with redis?

Not really. But in your errors seems Redis is not running on the address you have given.

You can choose to use Redis as database with digital ocean apps - and there you get a full url as connection string

1 Like

Do you know if the username and password for redis on DO can be added directly to the connection string?

Yes it can - just check the connection options in DO, there is a connection string display - where you have it all as single connection url.

Right there in front of me. Thanks.

Do I assume correctly that if I do auto-deploy based on a branch (eg. master) that I should also push to github on master when I have the production target selected? Feels like if I make a mistake and push master while on a dev target, then the dev db settings, etc. will be deployed.

Well currently you just bind a git repository like github to your live app in DO.

So whenever you push to that repository, it gets published to the live app.

I think we should integrate the DO apps more like what we did with Heroku, so you can just deploy and a version get published live.

Very interesting. I’d be keen to try this out should Wappler integrate directly. Any ideas on a timeframe @George

Well the more requests, the faster we will implement it.

So moved to the feature request category.

1 Like

Voted :blush:

What exactly is it and why do we need it? It’s beyond my knowledge level but I could be convinced to vote. :wink:

It’s similar and an alternative to hosting on Heroku (managed Iaas/Paas)

@George to solve this now, with no ETA on integration - I assume we’d need at least two git repo’s. One for production pushes only, and then the normal one for local dev/staging work, and use the prod git repo only for binding to DO?