dm3 icon indicating copy to clipboard operation
dm3 copied to clipboard

DS3 host delivery service

Open AlexNi245 opened this issue 1 year ago • 1 comments

Now that the DS is part of an independent workspace there should be an easy way a DS operator can use one on its own.

  • [ ] Figure out how to make CLI scripts as accessible as possible
  • [ ] Figure out how to make Deployment as easy as possible
  • [ ] Add documentation that makes it easy to set up a DS

AlexNi245 avatar Feb 21 '24 15:02 AlexNi245

  1. Provide docker container and docker-compose file to spin up local or remote instance
  2. avoid: wget xxx | sudo bash

Necessary steps

  1. web app 1: create keys and config from input data -> config.json
  2. web app 2: load config.json and publish to ens or offchain resolver
  3. on webserver: execute docker compose with config.json
  4. (configure network -> this is the user's responsibility)

@malteish implements web apps quick and dirty

malteish avatar May 07 '24 09:05 malteish

Some notes: https://www.notion.so/corpusventures/Delivery-service-f68b1796472045d09fb4662b1ec04190

malteish avatar May 16 '24 11:05 malteish

Thinking about the setup helper and the delivery service, I had a realization today. Currently, setting the service up would work something like this:

  1. get ENS
  2. get domain
  3. get wallet
  4. use helper
  5. copy files to some server or service
  6. wget docker-compose.yml
  7. docker compose up

I want it to work like this:

  1. get domain (my-ds.org)
  2. on server: docker run dm3-ds@latest
  3. use browser to connect to my-ds.org/setup
  4. finish setup there (you still need ens and wallet, but can follow the guide on your own instance, which feels much smoother and more trustworthy imo)

link

Open questions:

  1. Database. Redis is launched as a separate container. Either we use docker compose, then the user has to manually download a docker-compose file. Or we integrate the database into the delivery service container.
  2. Volumes. The config and environment should persist, otherwise the setup step would have to be repeated every time. The same goes for the database.
  3. How to bundle the setup helper. I creates files inside the container, which is potentially dangerous. How do we make it safe? How can it be bundled? How does node create files on the server?

malteish avatar May 27 '24 09:05 malteish

Current state: web app v0.1 is ready. I need:

  • Steffen and others to test the web app. (check existing issues and add new issues here)
  • The delivery-service-image to be published. (Anyone who wants to test, please download and import this image into your local docker: image)

malteish avatar May 29 '24 10:05 malteish

done, though web app is just a poc atm

malteish avatar Jun 12 '24 08:06 malteish