Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BTCPayServer-Docker integration #103

Open
Kukks opened this issue Dec 11, 2019 · 3 comments
Open

BTCPayServer-Docker integration #103

Kukks opened this issue Dec 11, 2019 · 3 comments
Labels
infra something related to the infrastructure of Dojo question Further information is requested

Comments

@Kukks
Copy link

Kukks commented Dec 11, 2019

Is your feature request related to a problem? Please describe.
We have a similar docker-compose builder system for btpayserver at https://github.com/btcpayserver/btcpayserver-docker, which also deploys a full bitcoin node(and optionally with txindex and unpruned) along with a tor node.

Describe the solution you'd like
It would be nice to either or else find a simplified wayc to deploy dojo through the plugin system inbtcpayserver-docker(some info here: https://github.com/btcpayserver/btcpayserver-docker#how-can-i-customize-the-generated-docker-compose-file). I think it should be fairly easy:

  • build and publish docker images for dojo( no need for bitcoind, tor and mysql from what I can tell)
  • allow specifying all needed options to connect dojo to custom mysql, bitcoind and tor
  • allow auto generation of the auth token stuff
  • create docker fragment in BTCPay( started messing about with this at Kukks/btcpayserver-docker@031e647)

Describe alternatives you've considered
Have an option here to interoperate with that setup but I think it would just be overhead here

@LaurentMT LaurentMT added infra something related to the infrastructure of Dojo question Further information is requested labels Dec 14, 2019
@LaurentMT
Copy link
Contributor

Hey Kukks.

Here are a few shower thoughts. I hope they'll help.

This repo actually stores 2 different things:

  • Dojo, the NodeJS backend server interfaced to a few software bricks (bitcoind, MySQL, Tor&Nginx) + the Maintenance Tool (basically a static HTML/js website sending requests to the backend server),
  • MyDojo, a all-in-one Docker packaging provided by Samourai Wallet that allows users to install everything on their machine.

MyDojo follows a specific philosophy (strong focus on privacy, minimal and specialized all-in-one packaging prefered over genericity/modularity of the packaging). Thus, that gives us two options for the integration of Dojo into another stack:

  • high level integration (integration of some parts of MyDojo into the stack). The potential challenge is that design choices/constraints/priorities may diverge,
  • lower level integration (integration of Dojo and the Maintenance Tool in the target stack).

The second option is the one used by a few others projects (nodl, etc) and to my knowledge it was a good choice. It implied little (if not zero) disruptive changes in the different stacks.

A few details about this second option:

And that's it. Everything else is a matter of choices made for the target stack. :)

@Kukks
Copy link
Author

Kukks commented Feb 28, 2020

Just a quick update, I forked the repo and added a CI to auto build the docker images and publish to Docker hub. Would this be something you're interested in having pushed upstream?

@LaurentMT
Copy link
Contributor

Sure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
infra something related to the infrastructure of Dojo question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants