tornado-relayer/docker-compose.yml

602 lines
14 KiB
YAML
Raw Normal View History

2019-12-05 22:08:54 +03:00
version: '2'
2019-12-12 23:04:19 +03:00
2019-12-05 22:08:54 +03:00
services:
2023-03-19 02:01:06 +03:00
redis:
image: redis
restart: always
command: [redis-server, --appendonly, 'yes']
volumes:
- redis:/data
nginx:
image: nginx:alpine
container_name: nginx
restart: always
ports:
- 80:80
- 443:443
volumes:
- conf:/etc/nginx/conf.d
- vhost:/etc/nginx/vhost.d
- html:/usr/share/nginx/html
- certs:/etc/nginx/certs
logging:
driver: none
dockergen:
image: poma/docker-gen
container_name: dockergen
restart: always
command: -notify-sighup nginx -watch /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
volumes_from:
- nginx
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
letsencrypt:
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: letsencrypt
restart: always
environment:
NGINX_DOCKER_GEN_CONTAINER: dockergen
volumes_from:
- nginx
- dockergen
# ---------------------- ETH ----------------------- #
eth-server:
profiles: [ 'eth' ]
2020-12-19 02:16:09 +03:00
image: tornadocash/relayer:mining
2019-12-05 22:08:54 +03:00
restart: always
2020-10-03 10:02:38 +03:00
command: server
2023-03-19 02:01:06 +03:00
# env_file: .env.eth
2019-12-05 22:08:54 +03:00
environment:
2023-03-19 02:01:06 +03:00
NET_ID: 1
2019-12-13 16:14:50 +03:00
REDIS_URL: redis://redis/0
nginx_proxy_read_timeout: 600
2020-11-04 22:23:14 +03:00
depends_on: [redis]
2019-12-13 16:14:50 +03:00
2023-03-19 02:01:06 +03:00
eth-treeWatcher:
profiles: [ 'eth' ]
2020-12-19 02:16:09 +03:00
image: tornadocash/relayer:mining
2019-12-13 16:14:50 +03:00
restart: always
2020-10-14 22:10:34 +03:00
command: treeWatcher
2023-03-19 02:01:06 +03:00
# env_file: .env.eth
2019-12-13 16:14:50 +03:00
environment:
2023-03-19 02:01:06 +03:00
NET_ID: 1
2020-10-14 22:10:34 +03:00
REDIS_URL: redis://redis/0
2020-11-04 22:23:14 +03:00
depends_on: [redis]
2020-10-03 10:02:38 +03:00
2023-03-19 02:01:06 +03:00
eth-priceWatcher:
profiles: [ 'eth' ]
2020-12-19 02:16:09 +03:00
image: tornadocash/relayer:mining
2020-10-03 10:02:38 +03:00
restart: always
2020-10-14 22:10:34 +03:00
command: priceWatcher
2023-03-19 02:01:06 +03:00
# env_file: .env.eth
2020-10-03 10:02:38 +03:00
environment:
2023-03-19 02:01:06 +03:00
NET_ID: 1
2020-10-14 22:10:34 +03:00
REDIS_URL: redis://redis/0
2023-03-19 02:01:06 +03:00
nginx_proxy_read_timeout: 600
2020-11-04 22:23:14 +03:00
depends_on: [redis]
2020-10-03 10:02:38 +03:00
2023-03-19 02:01:06 +03:00
eth-treeWatcher:
profiles: [ 'eth' ]
image: tornadocash/relayer:mining
restart: always
command: treeWatcher
# env_file: .env.eth
environment:
NET_ID: 1
REDIS_URL: redis://redis/0
depends_on: [redis]
eth-healthWatcher:
profiles: [ 'eth' ]
2021-02-10 00:30:15 +03:00
image: tornadocash/relayer:mining
restart: always
command: healthWatcher
2023-03-19 02:01:06 +03:00
# env_file: .env.eth
2021-02-10 00:30:15 +03:00
environment:
2023-03-19 02:01:06 +03:00
NET_ID: 1
2021-02-10 00:30:15 +03:00
REDIS_URL: redis://redis/0
depends_on: [redis]
2023-03-19 02:01:06 +03:00
eth-worker1:
profiles: [ 'eth' ]
2020-12-19 02:16:09 +03:00
image: tornadocash/relayer:mining
2020-10-03 10:02:38 +03:00
restart: always
command: worker
2023-03-19 02:01:06 +03:00
# env_file: .env.eth
2020-10-03 10:02:38 +03:00
environment:
2023-03-19 02:01:06 +03:00
NET_ID: 1
2020-10-14 22:10:34 +03:00
REDIS_URL: redis://redis/0
2020-11-04 22:23:14 +03:00
depends_on: [redis]
2020-10-14 22:10:34 +03:00
2020-11-04 19:01:51 +03:00
# worker2:
2020-12-19 02:16:09 +03:00
# image: tornadocash/relayer:mining
2020-11-04 19:01:51 +03:00
# restart: always
# command: worker
# env_file: .env
# environment:
# PRIVATE_KEY: qwe
# REDIS_URL: redis://redis/0
2020-12-30 23:35:33 +03:00
# # this container will proxy *.onion domain to the server container
# # if you want to run *only* as .onion service, you don't need `nginx`, `letsencrypt`, `dockergen` containers
2020-11-29 10:18:28 +03:00
# tor:
# image: strm/tor
# restart: always
2020-12-30 23:35:33 +03:00
# depends_on: [server]
2020-11-29 10:18:28 +03:00
# environment:
# LISTEN_PORT: 80
2020-12-30 23:35:33 +03:00
# REDIRECT: server:8000
2020-11-29 10:18:28 +03:00
# # Generate a new key with
# # docker run --rm --entrypoint shallot strm/tor-hiddenservice-nginx ^foo
# PRIVATE_KEY: |
# -----BEGIN RSA PRIVATE KEY-----
# ...
# -----END RSA PRIVATE KEY-----
# # auto update docker containers when new image is pushed to docker hub (be careful with that)
# watchtower:
# image: v2tec/watchtower
# restart: always
# volumes:
# - /var/run/docker.sock:/var/run/docker.sock
# # this container will send Telegram notifications when other containers are stopped/restarted
# # it's best to run this container on some other instance, otherwise it can't notify if the whole instance goes down
# notifier:
# image: poma/docker-telegram-notifier
# restart: always
# volumes:
# - /var/run/docker.sock:/var/run/docker.sock:ro
# environment:
# # How to create bot: https://core.telegram.org/bots#3-how-do-i-create-a-bot
# # How to get chat id: https://stackoverflow.com/questions/32423837/telegram-bot-how-to-get-a-group-chat-id/32572159#32572159
# TELEGRAM_NOTIFIER_BOT_TOKEN: ...
# TELEGRAM_NOTIFIER_CHAT_ID: ...
# # this container will send Telegram notifications if specified address doesn't have enough funds
# monitor_mainnet:
# image: peppersec/monitor_eth
# restart: always
# environment:
# TELEGRAM_NOTIFIER_BOT_TOKEN: ...
# TELEGRAM_NOTIFIER_CHAT_ID: ...
# ADDRESS: '0x0000000000000000000000000000000000000000'
# THRESHOLD: 0.5 # ETH
# RPC_URL: https://mainnet.infura.io
# BLOCK_EXPLORER: etherscan.io
2023-03-19 02:01:06 +03:00
# -------------------------------------------------- #
# ---------------------- BNB ----------------------- #
bnb-server:
profiles: [ 'bnb' ]
image: tornadocash/relayer:mining
restart: always
2023-03-19 02:01:06 +03:00
command: server
# env_file: .env.bnb
environment:
NET_ID: 56
REDIS_URL: redis://redis/1
nginx_proxy_read_timeout: 600
depends_on: [redis]
2023-03-19 02:01:06 +03:00
bnb-treeWatcher:
profiles: [ 'bnb' ]
image: tornadocash/relayer:mining
2020-11-04 19:01:51 +03:00
restart: always
2023-03-19 02:01:06 +03:00
command: treeWatcher
# env_file: .env.bnb
environment:
NET_ID: 56
REDIS_URL: redis://redis/1
depends_on: [redis]
2020-11-04 19:01:51 +03:00
2023-03-19 02:01:06 +03:00
bnb-priceWatcher:
profiles: [ 'bnb' ]
image: tornadocash/relayer:mining
2020-11-04 19:01:51 +03:00
restart: always
2023-03-19 02:01:06 +03:00
command: priceWatcher
# env_file: .env.bnb
environment:
NET_ID: 56
REDIS_URL: redis://redis/1
depends_on: [redis]
2020-11-04 19:01:51 +03:00
2023-03-19 02:01:06 +03:00
bnb-healthWatcher:
profiles: [ 'bnb' ]
image: tornadocash/relayer:mining
2020-11-04 19:01:51 +03:00
restart: always
2023-03-19 02:01:06 +03:00
command: healthWatcher
# env_file: .env.bnb
2020-11-04 19:01:51 +03:00
environment:
2023-03-19 02:01:06 +03:00
NET_ID: 56
REDIS_URL: redis://redis/1
depends_on: [redis]
bnb-worker1:
profiles: [ 'bnb' ]
image: tornadocash/relayer:mining
restart: always
command: worker
# env_file: .env.bnb
environment:
NET_ID: 56
REDIS_URL: redis://redis/1
depends_on: [redis]
# -------------------------------------------------- #
# ---------------------- MATIC --------------------- #
matic-server:
profiles: [ 'matic' ]
image: tornadocash/relayer:mining
restart: always
command: server
# env_file: .env.matic
environment:
NET_ID: 137
REDIS_URL: redis://redis/2
nginx_proxy_read_timeout: 600
depends_on: [redis]
matic-treeWatcher:
profiles: [ 'matic' ]
image: tornadocash/relayer:mining
restart: always
command: treeWatcher
# env_file: .env.matic
environment:
NET_ID: 137
REDIS_URL: redis://redis/2
depends_on: [redis]
matic-priceWatcher:
profiles: [ 'matic' ]
image: tornadocash/relayer:mining
restart: always
command: priceWatcher
# env_file: .env.matic
environment:
NET_ID: 137
REDIS_URL: redis://redis/2
depends_on: [redis]
matic-healthWatcher:
profiles: [ 'matic' ]
image: tornadocash/relayer:mining
restart: always
command: healthWatcher
# env_file: .env.matic
environment:
NET_ID: 137
REDIS_URL: redis://redis/2
depends_on: [redis]
matic-worker1:
profiles: [ 'matic' ]
image: tornadocash/relayer:mining
restart: always
command: worker
# env_file: .env.matic
environment:
NET_ID: 137
REDIS_URL: redis://redis/2
depends_on: [redis]
# -------------------------------------------------- #
# ---------------------- XDAI ---------------------- #
xdai-server:
profiles: [ 'xdai' ]
image: tornadocash/relayer:mining
restart: always
command: server
# env_file: .env.xdai
environment:
NET_ID: 100
REDIS_URL: redis://redis/3
nginx_proxy_read_timeout: 600
depends_on: [redis]
xdai-treeWatcher:
profiles: [ 'xdai' ]
image: tornadocash/relayer:mining
restart: always
command: treeWatcher
# env_file: .env.xdai
environment:
NET_ID: 100
REDIS_URL: redis://redis/3
depends_on: [redis]
xdai-priceWatcher:
profiles: [ 'xdai' ]
image: tornadocash/relayer:mining
restart: always
command: priceWatcher
# env_file: .env.xdai
environment:
NET_ID: 100
REDIS_URL: redis://redis/3
depends_on: [redis]
xdai-healthWatcher:
profiles: [ 'xdai' ]
image: tornadocash/relayer:mining
restart: always
command: healthWatcher
# env_file: .env.xdai
environment:
NET_ID: 100
REDIS_URL: redis://redis/3
depends_on: [redis]
xdai-worker1:
profiles: [ 'xdai' ]
image: tornadocash/relayer:mining
restart: always
command: worker
# env_file: .env.xdai
environment:
NET_ID: 100
REDIS_URL: redis://redis/3
depends_on: [redis]
# -------------------------------------------------- #
# ---------------------- AVAX ---------------------- #
avax-server:
profiles: [ 'avax' ]
image: tornadocash/relayer:mining
restart: always
command: server
# env_file: .env.avax
environment:
NET_ID: 43114
REDIS_URL: redis://redis/4
nginx_proxy_read_timeout: 600
depends_on: [redis]
avax-treeWatcher:
profiles: [ 'avax' ]
image: tornadocash/relayer:mining
restart: always
command: treeWatcher
# env_file: .env.avax
environment:
NET_ID: 43114
REDIS_URL: redis://redis/4
depends_on: [redis]
avax-priceWatcher:
profiles: [ 'avax' ]
image: tornadocash/relayer:mining
restart: always
command: priceWatcher
# env_file: .env.avax
environment:
NET_ID: 43114
REDIS_URL: redis://redis/4
depends_on: [redis]
avax-healthWatcher:
profiles: [ 'avax' ]
image: tornadocash/relayer:mining
restart: always
command: healthWatcher
# env_file: .env.avax
environment:
NET_ID: 43114
REDIS_URL: redis://redis/4
depends_on: [redis]
avax-worker1:
profiles: [ 'avax' ]
image: tornadocash/relayer:mining
restart: always
command: worker
# env_file: .env.avax
environment:
NET_ID: 43114
REDIS_URL: redis://redis/4
depends_on: [redis]
# -------------------------------------------------- #
# ---------------------- OP ------------------------ #
op-server:
profiles: [ 'op' ]
image: tornadocash/relayer:mining
restart: always
command: server
# env_file: .env.op
environment:
NET_ID: 10
REDIS_URL: redis://redis/5
nginx_proxy_read_timeout: 600
depends_on: [redis]
op-treeWatcher:
profiles: [ 'op' ]
image: tornadocash/relayer:mining
restart: always
command: treeWatcher
# env_file: .env.op
environment:
NET_ID: 10
REDIS_URL: redis://redis/5
depends_on: [redis]
op-priceWatcher:
profiles: [ 'op' ]
image: tornadocash/relayer:mining
restart: always
command: priceWatcher
# env_file: .env.op
environment:
NET_ID: 10
REDIS_URL: redis://redis/5
depends_on: [redis]
op-healthWatcher:
profiles: [ 'op' ]
image: tornadocash/relayer:mining
restart: always
command: healthWatcher
# env_file: .env.op
environment:
NET_ID: 10
REDIS_URL: redis://redis/5
depends_on: [redis]
op-worker1:
profiles: [ 'op' ]
image: tornadocash/relayer:mining
restart: always
command: worker
# env_file: .env.op
environment:
NET_ID: 10
REDIS_URL: redis://redis/5
depends_on: [redis]
# -------------------------------------------------- #
# ---------------------- ARB ----------------------- #
arb-server:
profiles: [ 'arb' ]
image: tornadocash/relayer:mining
restart: always
command: server
# env_file: .env.arb
environment:
NET_ID: 42161
REDIS_URL: redis://redis/6
nginx_proxy_read_timeout: 600
depends_on: [redis]
arb-treeWatcher:
profiles: [ 'arb' ]
image: tornadocash/relayer:mining
restart: always
command: treeWatcher
# env_file: .env.arb
environment:
NET_ID: 42161
REDIS_URL: redis://redis/6
depends_on: [redis]
arb-priceWatcher:
profiles: [ 'arb' ]
image: tornadocash/relayer:mining
restart: always
command: priceWatcher
# env_file: .env.arb
environment:
NET_ID: 42161
REDIS_URL: redis://redis/6
depends_on: [redis]
arb-healthWatcher:
profiles: [ 'arb' ]
image: tornadocash/relayer:mining
restart: always
command: healthWatcher
# env_file: .env.arb
environment:
NET_ID: 42161
REDIS_URL: redis://redis/6
depends_on: [redis]
arb-worker1:
profiles: [ 'arb' ]
image: tornadocash/relayer:mining
restart: always
command: worker
# env_file: .env.arb
environment:
NET_ID: 42161
REDIS_URL: redis://redis/6
depends_on: [redis]
# -------------------------------------------------- #
# ---------------------- GETH ---------------------- #
geth-server:
profiles: [ 'geth' ]
image: tornadocash/relayer:mining
restart: always
command: server
# env_file: .env.geth
environment:
NET_ID: 5
REDIS_URL: redis://redis/7
nginx_proxy_read_timeout: 600
depends_on: [redis]
geth-treeWatcher:
profiles: [ 'geth' ]
image: tornadocash/relayer:mining
restart: always
command: treeWatcher
# env_file: .env.geth
environment:
NET_ID: 5
REDIS_URL: redis://redis/7
depends_on: [redis]
geth-priceWatcher:
profiles: [ 'geth' ]
image: tornadocash/relayer:mining
restart: always
command: priceWatcher
# env_file: .env.geth
environment:
NET_ID: 5
REDIS_URL: redis://redis/7
depends_on: [redis]
geth-healthWatcher:
profiles: [ 'geth' ]
image: tornadocash/relayer:mining
restart: always
command: healthWatcher
# env_file: .env.geth
environment:
NET_ID: 5
REDIS_URL: redis://redis/7
depends_on: [redis]
geth-worker1:
profiles: [ 'geth' ]
image: tornadocash/relayer:mining
restart: always
command: worker
# env_file: .env.geth
environment:
NET_ID: 5
REDIS_URL: redis://redis/7
depends_on: [redis]
# -------------------------------------------------- #
2020-11-04 19:01:51 +03:00
volumes:
2020-11-04 19:01:51 +03:00
conf:
vhost:
html:
certs:
2020-01-03 20:58:54 +03:00
redis: