Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/trezor/coinjoin-backend
https://github.com/trezor/coinjoin-backend
Last synced: 4 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/trezor/coinjoin-backend
- Owner: trezor
- Created: 2022-03-03T16:22:49.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-01-02T15:22:45.000Z (11 months ago)
- Last Synced: 2024-04-10T16:07:39.526Z (7 months ago)
- Language: Python
- Size: 103 MB
- Stars: 6
- Watchers: 6
- Forks: 8
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# coinjoin-backend
Docker image running multiple services: bitcoind, blockbook, wasabi-wallet and wasabi-backend## Building
The command `make`
* clones the WasabiWallet,
* builds a docker image called `coinjoin-backend-image`,
* creates a docker container called `coinjoin-backend-container`.## Running
The docker container is started with `make start` and stopped with `make stop`. The container doesn't discard its state when stopped.The container runs a RegTest with the following services on the address 127.0.0.1:
| Server | Protocol | Port | User | Password |
|-------------------------|----------|-------|------|----------|
| Bitcoin knots | P2P | 18444 | | |
| Bitcoin knots | RPC | 18443 | rpc | rpc |
| Blockbook | HTTP | 19121 | | |
| Blockbook | Websocket| 19121 | | |
| Faucet | HTTP | 8080 | | |
| Wabisabi proxy | HTTP | 8081 | | |
| WalletWasabi backend | REST API | 37127 | | |
| WalletWasabi client | REST API | 37128 | | |The command `make create-container` rebuilds the container which resets the network.
## Connecting to WasabiWallet GUI
* Run the WasabiWallet GUI.
* Go to settings of the GUI and
* turn off network encryption (TOR),
* set network to RegTest,
* set bitcoin P2P Endpoint to 127.0.0.1:18444.
* Restart the GUI.
* Open http://127.0.0.1:8080 in your browser.
* Send yourself money.## Running WasabiWallet GUI from docker
Use command `make run-wallet` to start WasabiWallet GUI with already preloaded accounts (no password).
For convenience also `Trezor` accounts with `all all` seed (no passphrase) are preloaded.## Using custom WabiSabiClientLibrary (middleware)
Download artifacts from [github action](https://github.com/trezor/WalletWasabi/actions/workflows/build-WabiSabiClientLibrary-binary.yaml) unzip files and make them executable.
```
unzip ~/Downloads/WabiSabiClientLibrary-bin.zip -d ~/Downloads/WabiSabiClientLibrary
chmod +x ~/Downloads/WabiSabiClientLibrary/*/publish/WalletWasabi.WabiSabiClientLibrary
```Start `coinjoin-backend` image with mounted middleware:
```
docker run -d --net host -v ~/Downloads/WabiSabiClientLibrary/linux-x64/publish:/mnt/middleware coinjoin-backend-image
```## Proxy
For development in browser environment proxy accepts preflight `OPTIONS` requests and overrides `Access-Control-Allow-Origin` header
### Proxy endpoints:
- WabiSabi backend http://localhost:8081/backend
- WabiSabi coordinator http://localhost:8081/backend/wabisabi
- WabiSabi client http://localhost:8081/client