mirror of
https://github.com/joinmarket-webui/jam.git
synced 2026-08-18 13:09:10 +02:00
* fix: min confs of preconditions for all utxos instead of single * fix: i18n phrases of collaborative transaction preconditions * wip: use new scheduler preconditions in Jam component * fix: only report utxos without retries of no retry is left within jar * feat(regtest): set taker_utxo_retries and maker_timeout_sec config vars for improved testability * test(preconditions): add test for CoinjoinRequirements * fix: enable starting scheduler even if preconditions are not fulfilled * review: fix wording Co-authored-by: Gigi <109058+dergigi@users.noreply.github.com>
187 lines
5.8 KiB
YAML
187 lines
5.8 KiB
YAML
version: "3"
|
|
|
|
services:
|
|
|
|
joinmarket:
|
|
container_name: jm_regtest_joinmarket
|
|
build:
|
|
context: ./dockerfile-deps/joinmarket/latest
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
environment:
|
|
READY_FILE: /root/.regtest-initializer/btc_fully_synched
|
|
ENSURE_WALLET: "true"
|
|
REMOVE_LOCK_FILES: "true"
|
|
jm_rpc_wallet_file: jm_primary
|
|
jm_minimum_makers: 1
|
|
jm_tx_broadcast: self
|
|
jm_blockchain_source: regtest
|
|
jm_network: testnet
|
|
jm_rpc_host: bitcoind
|
|
jm_rpc_port: 43782
|
|
jm_rpc_user: joinmarket
|
|
jm_rpc_password: joinmarket
|
|
jm_directory_nodes: ${JM_DIRECTORY_NODES:?You must set the onion address generated in prepare step to your .env file}
|
|
jm_socks5: "false" # will _not_ connect to local irc over tor
|
|
expose:
|
|
- 62601 # obwatch
|
|
- 27183 # joinmarketd
|
|
- 28183 # jmwalletd api
|
|
- 28283 # jmwalletd websocket
|
|
ports:
|
|
- "62601:62601"
|
|
- "28183:28183"
|
|
- "28283:28283"
|
|
volumes:
|
|
- "joinmarket_datadir:/root/.joinmarket"
|
|
- "initializer_datadir:/root/.regtest-initializer"
|
|
depends_on:
|
|
- bitcoind
|
|
- bitcoind_regtest_initializer
|
|
- irc
|
|
|
|
joinmarket2:
|
|
container_name: jm_regtest_joinmarket2
|
|
build:
|
|
context: ./dockerfile-deps/joinmarket/webui-standalone
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
environment:
|
|
READY_FILE: /root/.regtest-initializer/btc_fully_synched
|
|
ENSURE_WALLET: "true"
|
|
REMOVE_LOCK_FILES: "true"
|
|
APP_USER: joinmarket
|
|
APP_PASSWORD: joinmarket
|
|
jm_rpc_wallet_file: jm_secondary
|
|
jm_minimum_makers: 1
|
|
jm_tx_broadcast: self
|
|
jm_blockchain_source: regtest
|
|
jm_network: testnet
|
|
jm_rpc_host: bitcoind
|
|
jm_rpc_port: 43782
|
|
jm_rpc_user: joinmarket2
|
|
jm_rpc_password: joinmarket2
|
|
jm_directory_nodes: ${JM_DIRECTORY_NODES:?You must set the onion address generated in prepare step to your .env file}
|
|
jm_socks5: "false" # will _not_ connect to local irc over tor
|
|
jm_taker_utxo_retries: 1 # easier testing of commitment failures on regtest; default is 3
|
|
maker_timeout_sec: 10 # easier testing of maker timeouts on regtest (and "Stall Monitor" retries); default is 60
|
|
expose:
|
|
- 80 # nginx
|
|
- 62601 # obwatch
|
|
- 27183 # joinmarketd
|
|
- 28183 # jmwalletd api
|
|
- 28283 # jmwalletd websocket
|
|
ports:
|
|
- "29183:28183"
|
|
- "29283:28283"
|
|
- "29080:80"
|
|
volumes:
|
|
- "joinmarket2_datadir:/root/.joinmarket"
|
|
- "initializer_datadir:/root/.regtest-initializer"
|
|
depends_on:
|
|
- bitcoind
|
|
- bitcoind_regtest_initializer
|
|
- irc
|
|
|
|
joinmarket_directory_node:
|
|
container_name: jm_regtest_joinmarket_directory_node
|
|
build:
|
|
context: ./dockerfile-deps/joinmarket/directory_node
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
environment:
|
|
jm_hidden_service_dir: \/root\/.joinmarket\/hidden_service_dir
|
|
jm_directory_nodes: ${JM_DIRECTORY_NODES:?You must set the onion address generated in prepare step to your .env file}
|
|
jm_blockchain_source: regtest
|
|
jm_network: testnet
|
|
volumes:
|
|
- "joinmarket_directory_node_datadir:/root/.joinmarket"
|
|
- "./out/hidden_service_dir:/root/.joinmarket/hidden_service_dir:z"
|
|
|
|
irc:
|
|
container_name: jm_regtest_irc
|
|
restart: unless-stopped
|
|
image: ghcr.io/ergochat/ergo:v2.10.0
|
|
expose:
|
|
- 6667
|
|
volumes:
|
|
- "irc_datadir:/ircd"
|
|
|
|
bitcoind:
|
|
container_name: jm_regtest_bitcoind
|
|
restart: unless-stopped
|
|
image: btcpayserver/bitcoin:23.0
|
|
environment:
|
|
BITCOIN_NETWORK: regtest
|
|
BITCOIN_WALLETDIR: "/walletdata"
|
|
BITCOIN_EXTRA_ARGS: |
|
|
rpcport=43782
|
|
rpcbind=0.0.0.0
|
|
rpcallowip=0.0.0.0/0
|
|
port=39388
|
|
whitelist=0.0.0.0/0
|
|
maxmempool=500
|
|
debug=rpc
|
|
logips=0
|
|
networkactive=1
|
|
dnsseed=0
|
|
uacomment=jmdevbitcoindregtest
|
|
printpriority=1
|
|
logtimemicros=1
|
|
zmqpubrawblock=tcp://0.0.0.0:28332
|
|
zmqpubrawtx=tcp://0.0.0.0:28333
|
|
zmqpubhashblock=tcp://0.0.0.0:28334
|
|
dns=0
|
|
# do not automatically create tor hidden service
|
|
listenonion=0
|
|
# rpcauth (user=regtest; password=regtest)
|
|
rpcauth=regtest:20b58677979ad9d3cf4b78b1d6e85e44$$2ec3e1e1c00c7c58d7aff1d4bf96e4a984ea1af5d676d862fd0faa857a1d4d7c
|
|
# rpcauth (user=joinmarket; password=joinmarket)
|
|
rpcauth=joinmarket:260b4c5b1fbd09d75a4aabf90226282f$$76e170af088d43a588992cdd5e7bae2242b03c33aa672cccfd1fb75f9281299e
|
|
# rpcauth (user=joinmarket2; password=joinmarket2)
|
|
rpcauth=joinmarket2:521bf9f4468529d49c0a41f9c9f8fdbf$$63ae94a73d2aa45e7ee756945d9b1e469f9873ce026b815d676a748f777e0b8d
|
|
expose:
|
|
- 43782 # RPC
|
|
- 39388 # P2P
|
|
- 28332 # ZMQ
|
|
- 28333 # ZMQ
|
|
- 28334 # ZMQ
|
|
volumes:
|
|
- "bitcoin_datadir:/data"
|
|
- "bitcoin_wallet_datadir:/walletdata"
|
|
|
|
bitcoind_regtest_initializer:
|
|
container_name: jm_regtest_bitcoind_initializer
|
|
build:
|
|
context: ./dockerfile-deps/bitcoin/regtest-initializer
|
|
dockerfile: Dockerfile
|
|
restart: on-failure
|
|
environment:
|
|
READY_FILE: /root/.regtest-initializer/btc_fully_synched
|
|
RPC_HOST: bitcoind
|
|
RPC_PORT: 43782
|
|
RPC_USER: regtest
|
|
RPC_PASSWORD: regtest
|
|
volumes:
|
|
- "initializer_datadir:/root/.regtest-initializer"
|
|
depends_on:
|
|
- bitcoind
|
|
|
|
nginx:
|
|
container_name: jm_regtest_nginx_test_basepath
|
|
image: nginx
|
|
volumes:
|
|
- ./dockerfile-deps/nginx:/etc/nginx/templates
|
|
ports:
|
|
- "8000:80"
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
|
|
volumes:
|
|
bitcoin_datadir:
|
|
bitcoin_wallet_datadir:
|
|
initializer_datadir:
|
|
joinmarket_datadir:
|
|
joinmarket2_datadir:
|
|
joinmarket_directory_node_datadir:
|
|
irc_datadir:
|