jam/docker/regtest/readme.md

227 lines
6.7 KiB
Markdown
Raw Normal View History

# Docker setup for running Jam in regtest mode
2022-01-23 14:45:34 +01:00
This setup will help you set up a regtest environment quickly.
It starts multiple JoinMarket containers, hence not only API calls but also actual CoinJoin transactions can be tested.
Communication between these containers is done via Tor (if internet connection is available) and IRC (locally running container).
All containers will have a wallet named `Satoshi.jmdat` with password `test`.
The second container has basic auth enabled (username `joinmarket` and password `joinmarket`).
## Common flow
```sh
# (optional) once in a while rebuild the images
npm run regtest:rebuild
# start the regtest environment
npm run regtest:up
# fund wallets and start maker in secondary and tertiary container
2022-06-06 11:21:39 +02:00
npm run regtest:init
# mine blocks in regtest periodically
npm run regtest:mine
2022-06-06 11:21:39 +02:00
# start jam in development mode
npm run dev
2022-06-06 11:21:39 +02:00
[...]
# stop the regtest environment
npm run regtest:down
# (optional) wipe all test data and start from scratch next time
npm run regtest:clear
```
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
## Commands
2022-01-23 14:45:34 +01:00
2022-06-06 11:21:39 +02:00
### Start
2022-01-23 14:45:34 +01:00
Start the regtest environment with:
2022-01-23 14:45:34 +01:00
```sh
npm run regtest:up
2022-06-06 11:21:39 +02:00
# (optional) fund wallets and start maker in secondary and tertiary containers
2022-06-06 11:21:39 +02:00
npm run regtest:init
```
2022-04-27 10:14:40 +02:00
Once the regtest environment is up and running you can start Jam with:
```sh
npm run dev
2022-04-27 10:14:40 +02:00
```
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
### Stop
2022-01-23 14:45:34 +01:00
```sh
npm run regtest:down
```
If you want to start from scratch (removing all volumes):
2022-01-23 14:45:34 +01:00
```sh
npm run regtest:clear
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
```
2022-06-06 11:21:39 +02:00
### Mine
Mine regtest blocks in a fixed interval (current default is every 11 seconds).
2022-06-06 11:21:39 +02:00
This is useful for features that await confirmations or need incoming blocks regularly.
e.g. This is necessary for scheduled transactions to execute successfully.
2022-06-06 11:21:39 +02:00
```sh
npm run regtest:mine
```
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
## Images
The [Docker setup](dockerfile-deps/joinmarket/latest/Dockerfile) is an adaption of [jam-standalone](https://github.com/joinmarket-webui/jam-docker/tree/master/standalone) with as little adaptations as possible.
2022-01-23 14:45:34 +01:00
It will fetch the latest commit from the [`master` branch of the joinmarket-clientserver repo](https://github.com/JoinMarket-Org/joinmarket-clientserver/tree/master).
Keep in mind: Building from `master` is not always reliable. This tradeoff is made to enable testing new features immediately by just rebuilding the images.
2022-01-23 14:45:34 +01:00
The second JoinMarket container is based on `joinmarket-webui/jam-dev-standalone:master` which exposes an UI on port `29080`
(username `joinmarket` and pass `joinmarket` for Basic Authentication).
The third container is a copy of the second one exposed on port `30080` without authentication.
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
This is useful if you want to perform regression tests.
One additional JoinMarket container acts as [Directory Node](https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/onion-message-channels.md#directory) and exists solely to enable communication between peers.
### Build
```sh
# building the images
npm run regtest:build
```
2022-01-23 14:45:34 +01:00
In order to incorporate recent upstream changes (of the `master` branch), simply rebuild the setup from scratch.
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
2022-01-23 14:45:34 +01:00
```sh
# download and recompile the images from scratch (without using docker cache)
npm run regtest:rebuild
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
```
## Debugging
2022-01-23 14:45:34 +01:00
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
### Debug logs
2022-01-23 14:45:34 +01:00
```sh
# logs and follows content of log file in primary joinmarket container
npm run regtest:logs:jmwalletd
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
```
### Display running JoinMarket version
2022-01-23 14:45:34 +01:00
```sh
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
docker exec -t jm_regtest_joinmarket git log --oneline -1
```
## Helper scripts
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
Some helper scripts are included to make recurring tasks and interaction with the containers easier.
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
### `init-setup.sh`
2022-01-23 14:45:34 +01:00
This script helps in providing JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary and tertiary containers.
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
Its main goal is to make CoinJoin transactions possible in the regtest environment.
It should be run immediately after the Docker setup is successfully started so you can start developing right away.
A wallet named `Satoshi.jmdat` with password `test` will be created if it does not exist.
2022-01-23 14:45:34 +01:00
```sh
# fund wallets and start maker service in secondary and tertiary containers
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
[user@home regtest]$ ./init-setup.sh
```
2022-01-23 14:45:34 +01:00
```text
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
[...]
Attempt to start maker for wallet 'Satoshi.jmdat' in secondary container ..
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
[...]
Successfully started maker for wallet 'Satoshi.jmdat'.
[...]
Attempt to start maker for wallet 'Satoshi.jmdat' in tertiary container ..
[...]
Successfully started maker for wallet 'Satoshi.jmdat'.
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
[...]
```
### `mine-block.sh`
2022-01-23 14:45:34 +01:00
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
Mine one or more blocks to an optionally given address.
2022-01-23 14:45:34 +01:00
```sh
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
[user@home regtest]$ ./mine-block.sh
```
Usage: mine-block.sh [# of blocks] [address]
2022-01-23 14:45:34 +01:00
```sh
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
# mine a single block
[user@home regtest]$ ./mine-block.sh
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
# mine 21 blocks
[user@home regtest]$ ./mine-block.sh 21
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
# mine 42 blocks to given address
[user@home regtest]$ ./mine-block.sh 42 bcrt1qrnz0thqslhxu86th069r9j6y7ldkgs2tzgf5wx
```
This also comes in handy if you want to periodically mine blocks:
2022-01-23 14:45:34 +01:00
```sh
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
# mine a block every 5 seconds
[user@home regtest]$ watch -n 5 ./mine-block.sh
```
### `fund-wallet.sh`
2022-01-23 14:45:34 +01:00
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
Funding and/or creating a joinmarket regtest wallet.
See the help page for examples and more usage information:
2022-01-23 14:45:34 +01:00
```sh
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
[user@home regtest]$ ./fund-wallet.sh --help
```
#### Funding regtest wallet
2022-01-23 14:45:34 +01:00
Executed without parameters the script will create one _spendable_ coinbase output to a wallet named 'Satoshi.jmdat'.
If the wallet does not exist, it will be created. See the following output:
2022-01-23 14:45:34 +01:00
```sh
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
[user@home regtest]$ ./fund-wallet.sh
```
2022-01-23 14:45:34 +01:00
```text
Trying to fund wallet 'Satoshi.jmdat'..
[...]
Successfully generated 1 blocks with rewards to bcrt1qyz7wql00gghwk25er08re3dhtv66h20h8gtgsp
```
Control various parameters by passing options to the script.
e.g. "Mine 5 blocks to wallet `Satoshi.jmdat` with password `correctbatteryhorsestaple` in mixdepth 3"
2022-01-23 14:45:34 +01:00
```sh
[user@home regtest]$ ./fund-wallet.sh --blocks 5 --wallet-name Satoshi.jmdat --password correctbatteryhorsestaple --mixdepth 3
```
2022-01-23 14:45:34 +01:00
```text
Trying to fund wallet 'Satoshi.jmdat'..
Successfully established connection to jmwalletd
Wallet 'Satoshi.jmdat' does not exist - creating..
Successfully created wallet 'Satoshi.jmdat'.
Write down the seedphrase: abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about
Fetching new funding address from wallet 'Satoshi.jmdat' in mixdepth 3
Successfully fetched new funding address bcrt1qs0aqmzxjq96jk8hhmta5jfn339dk4cme074lq3
Locking wallet 'Satoshi.jmdat'
Successfully locked wallet 'Satoshi.jmdat'.
Generating 5 blocks with rewards to bcrt1qs0aqmzxjq96jk8hhmta5jfn339dk4cme074lq3
Successfully generated 5 blocks with rewards to bcrt1qs0aqmzxjq96jk8hhmta5jfn339dk4cme074lq3
```
2022-01-23 14:45:34 +01:00
## Resources
Enable coinjoin on regtest env (#6) * fix: prevent 'config value not set' on cj in regtest env 'max_cj_fee' config values must be present when invoking a coinjoin via the api. the default config for the regtest env did not include these values before, hence they could not be overridden in docker-compose setup file. * dev: switch irc server from miniirc to ergochat * dev: start second joinmarket container In order to successfully perform a CoinJoin, there must be at least one maker. This commit adds a second JoinMarket container with jmwalletd accessible on port 29183. * dev: add helper script to mine a block * dev: add container switch to regtest-control script * dev: invoke mine-block in regtest-control script * dev: add flag '--unmatured' to regtest-control script Sometimes it is desired that block rewards do not reach maturity immediately. This is convenient if you want to supply several wallets with coins, but do not want to generate many blocks all the time. * dev: add helper script to start maker service This script helps in providing both JoinMarket containers a wallet with spendable coins and starting the Maker Service in the secondary container. Its main goal is to make CoinJoin transactions possible in the regtest environment. * dev: move common functions to script common.sh * fix: use correct irc host in docker setup * dev: use ergochat image from ghcr.io * dev: dont lock secondary wallet in setup script normally the wallet should be locked, but it seems this leads to the maker service responding very slowly which causes failing coinjoins. as the secondary instance is never interacted with directly, we can refrain from unlocking the wallet for now. * docs: add debug log command to docker readme * cleanup: rename script 'regtest-control' to 'fund-wallet' * dev: upgrade joinmarket from v0.9.3 to use current master branch * review: add more descriptive comments and cleanup files
2022-01-22 17:09:14 +01:00
2022-01-23 14:45:34 +01:00
- [JoinMarket Server (GitHub)](https://github.com/JoinMarket-Org/joinmarket-clientserver)
- [JoinMarket Server Testing Docs (GitHub)](https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/TESTING.md)