blitz icon indicating copy to clipboard operation
blitz copied to clipboard

Create a DigitalOcean droplet image for the DO Marketplace

Open flybayer opened this issue 4 years ago • 5 comments

What do you want and why?

We are adding a Blitz image to the Digital Ocean marketplace (they contacted me to start this process)

All of our image engineering docs and samples are listed together here. You can build a VM template manually, and automate that fairly quickly by simple scripting with Fabric.py

For the Image, the basic premise is:

  • fire up a "build Droplet" on DigitalOcean at the $5 level, using SSH keys only, no password
  • install your packages locally, and any scripts needed after first boot in cloud-init in /var/lib/cloud/scripts/per-instance
  • any user-interactive set up scripting via SSH after first login in /opt/vendorname/install_appname.sh
  • if user interaction is needed, add /opt/vendorname/install_appname.sh to /root/.bashrc so it executes one time (cp the skel version of .bashrc back into /root at the end of install_appname.sh)
  • run a cleanup – manually via the sample we provide, if you're doing all the above via Fabric.py automation our stuff will handle it for you
  • shutdown now and take a snapshot. Voila

So of course we'd like to automate this with Fabric.py

Once the image is created, let me know and I'll follow the submission process.

Note: we can get help from DO engineers if needed.


We also need one or more folks who can be responsible for supporting, and updating the image.


We're also adding a Kubernetes setup here: https://github.com/blitz-js/blitz/issues/2031

flybayer avatar Mar 01 '21 19:03 flybayer

I'll pick this up next week if nobody ends up grabbing it. I'm working on a little service that I'd like to deploy to a 5 dollar DO box.

malkomalko avatar Mar 19 '21 12:03 malkomalko

@malkomalko awesome!

flybayer avatar Mar 19 '21 14:03 flybayer

Hey I just stumbled over this issue, after I created blitz-js/legacy-framework#34. That issue might be interesting here, too. I am running a Blitz.js app on a DO droplet and re-building with updates is possible, but will result in a downtime as I describe in that issue.

embiem avatar Mar 20 '21 21:03 embiem

Ok, I got a DO box setup manually and wrote down the steps with PM2, Symlinking, and automatic deploys through a Github Action. Just need to think about how to turn this into a script for the marketplace. Will look into that a bit this weekend.

malkomalko avatar Mar 31 '21 12:03 malkomalko

@malkomalko Any updates on this?

WaysToGo avatar Oct 29 '21 09:10 WaysToGo