mirror of
https://github.com/joinmarket-webui/jam.git
synced 2026-08-13 12:33:26 +02:00
153 lines
6 KiB
YAML
153 lines
6 KiB
YAML
services:
|
|
joinmarket_native:
|
|
build:
|
|
context: ./dockerfile-deps/joinmarket/latest
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
environment:
|
|
ENSURE_WALLET: 'true'
|
|
REMOVE_LOCK_FILES: 'true'
|
|
jm_blockchain_source: regtest
|
|
jm_network: testnet
|
|
jm_rpc_host: bitcoind
|
|
jm_rpc_port: 43782
|
|
jm_directory_nodes: ${JM_ALL_DIRECTORY_NODES:?You must set the directory node addresses in generated env file}
|
|
jm_minimum_makers: 1 # necessary to do coinjoins with this regtest setup; default is 4
|
|
jm_taker_utxo_age: 1 # faster testing of scheduler runs; default is 5
|
|
jm_maker_timeout_sec: 30 # easier testing of maker timeouts on regtest (and "Stall Monitor" retries); default is 60
|
|
expose:
|
|
- 62601 # obwatch
|
|
- 27183 # joinmarketd daemon
|
|
- 28183 # jmwalletd api
|
|
- 28283 # jmwalletd websocket
|
|
healthcheck:
|
|
test: ['CMD', 'supervisorctl', 'status']
|
|
interval: 10s
|
|
timeout: 10s
|
|
retries: 20
|
|
start_period: 60s
|
|
start_interval: 3s
|
|
|
|
joinmarket_jam_standalone:
|
|
build:
|
|
context: ./dockerfile-deps/joinmarket/webui-standalone
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
environment:
|
|
ENSURE_WALLET: 'true'
|
|
REMOVE_LOCK_FILES: 'true'
|
|
jm_blockchain_source: regtest
|
|
jm_network: testnet
|
|
jm_rpc_host: bitcoind
|
|
jm_rpc_port: 43782
|
|
jm_directory_nodes: ${JM_ALL_DIRECTORY_NODES:?You must set the directory node addresses in generated env file}
|
|
jm_minimum_makers: 1 # necessary to do coinjoins with this regtest setup; default is 4
|
|
jm_taker_utxo_age: 1 # faster testing of scheduler runs; default is 5
|
|
expose:
|
|
- 80 # nginx
|
|
- 28183 # jmwalletd api
|
|
healthcheck:
|
|
test: ['CMD', 'dinitctl', 'status', 'jmwalletd']
|
|
interval: 10s
|
|
timeout: 10s
|
|
retries: 20
|
|
start_period: 60s
|
|
start_interval: 3s
|
|
|
|
joinmarket_jam_standalone_ng:
|
|
build:
|
|
context: ./dockerfile-deps/joinmarket/webui-standalone-ng
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
environment:
|
|
JMWALLETD_HOST: 0.0.0.0
|
|
BITCOIN__BACKEND_TYPE: descriptor_wallet
|
|
BITCOIN__RPC_URL: http://bitcoind:43782
|
|
BITCOIN__RPC_USER: regtest
|
|
BITCOIN__RPC_PASSWORD: regtest
|
|
LOGGING__LEVEL: DEBUG
|
|
NETWORK_CONFIG__NETWORK: testnet
|
|
NETWORK_CONFIG__BITCOIN_NETWORK: regtest
|
|
NETWORK_CONFIG__DIRECTORY_SERVERS: ${JM_ALL_DIRECTORY_NODES:?You must set the directory node addresses in generated env file}
|
|
expose:
|
|
- 80 # nginx
|
|
- 28183 # jmwalletd api
|
|
|
|
joinmarket_ng_native:
|
|
image: ghcr.io/joinmarket-ng/joinmarket-ng/jmwalletd:main
|
|
restart: unless-stopped
|
|
environment:
|
|
JOINMARKET_DATA_DIR: /root/.joinmarket-ng
|
|
JMWALLETD_HOST: 0.0.0.0
|
|
BITCOIN__BACKEND_TYPE: descriptor_wallet
|
|
BITCOIN__RPC_URL: http://bitcoind:43782
|
|
BITCOIN__RPC_USER: regtest
|
|
BITCOIN__RPC_PASSWORD: regtest
|
|
NETWORK_CONFIG__NETWORK: testnet
|
|
NETWORK_CONFIG__BITCOIN_NETWORK: regtest
|
|
NETWORK_CONFIG__DIRECTORY_SERVERS: ${JM_ALL_DIRECTORY_NODES:?You must set the directory node addresses in generated env file}
|
|
ORDERBOOK_WATCHER__HTTP_HOST: joinmarket_ng_orderbook_watcher
|
|
ORDERBOOK_WATCHER__HTTP_PORT: 8000
|
|
OBWATCH_URL: http://joinmarket_ng_orderbook_watcher:8000
|
|
TOR__SOCKS_HOST: tor
|
|
TOR__SOCKS_PORT: 9050
|
|
TOR__CONTROL_HOST: tor
|
|
TOR__CONTROL_PORT: 9051
|
|
TOR__COOKIE_PATH: /var/lib/tor/control_auth_cookie
|
|
TAKER__MINIMUM_MAKERS: 2 # necessary to do coinjoins with this regtest setup
|
|
TAKER__MAKER_TIMEOUT_SEC: 30 # easier testing of maker timeouts on regtest
|
|
expose:
|
|
- 8000 # obwatch
|
|
- 28183 # jmwalletd api
|
|
healthcheck:
|
|
test:
|
|
[
|
|
'CMD',
|
|
'python',
|
|
'-c',
|
|
"import socket,ssl,sys; s=socket.socket(); s.settimeout(5);\ntry:\n c=ssl.create_default_context(); c.check_hostname=False; c.verify_mode=ssl.CERT_NONE; c.wrap_socket(s, server_hostname='localhost').connect(('127.0.0.1',28183)); sys.exit(0)\nexcept Exception:\n pass\ntry:\n s=socket.socket(); s.settimeout(5); s.connect(('127.0.0.1',28183)); s.close(); sys.exit(0)\nexcept Exception:\n sys.exit(1)",
|
|
]
|
|
interval: 10s
|
|
timeout: 10s
|
|
retries: 20
|
|
start_period: 60s
|
|
start_interval: 3s
|
|
|
|
joinmarket_ng_peer:
|
|
image: ghcr.io/joinmarket-ng/joinmarket-ng/jmwalletd:main
|
|
restart: unless-stopped
|
|
environment:
|
|
JOINMARKET_DATA_DIR: /root/.joinmarket-ng
|
|
JMWALLETD_HOST: 0.0.0.0
|
|
BITCOIN__BACKEND_TYPE: descriptor_wallet
|
|
BITCOIN__RPC_URL: http://bitcoind:43782
|
|
BITCOIN__RPC_USER: regtest
|
|
BITCOIN__RPC_PASSWORD: regtest
|
|
NETWORK_CONFIG__NETWORK: testnet
|
|
NETWORK_CONFIG__BITCOIN_NETWORK: regtest
|
|
NETWORK_CONFIG__DIRECTORY_SERVERS: ${JM_ALL_DIRECTORY_NODES:?You must set the directory node addresses in generated env file}
|
|
ORDERBOOK_WATCHER__HTTP_HOST: joinmarket_ng_orderbook_watcher
|
|
ORDERBOOK_WATCHER__HTTP_PORT: 8000
|
|
OBWATCH_URL: http://joinmarket_ng_orderbook_watcher:8000
|
|
TOR__SOCKS_HOST: tor
|
|
TOR__SOCKS_PORT: 9050
|
|
TOR__CONTROL_HOST: tor
|
|
TOR__CONTROL_PORT: 9051
|
|
TOR__COOKIE_PATH: /var/lib/tor/control_auth_cookie
|
|
TAKER__MINIMUM_MAKERS: 2 # necessary to do coinjoins with this regtest setup
|
|
expose:
|
|
- 8000 # obwatch
|
|
- 28183 # jmwalletd api
|
|
healthcheck:
|
|
test:
|
|
[
|
|
'CMD',
|
|
'python',
|
|
'-c',
|
|
"import socket,ssl,sys; s=socket.socket(); s.settimeout(5);\ntry:\n c=ssl.create_default_context(); c.check_hostname=False; c.verify_mode=ssl.CERT_NONE; c.wrap_socket(s, server_hostname='localhost').connect(('127.0.0.1',28183)); sys.exit(0)\nexcept Exception:\n pass\ntry:\n s=socket.socket(); s.settimeout(5); s.connect(('127.0.0.1',28183)); s.close(); sys.exit(0)\nexcept Exception:\n sys.exit(1)",
|
|
]
|
|
interval: 10s
|
|
timeout: 10s
|
|
retries: 20
|
|
start_period: 60s
|
|
start_interval: 3s
|