Change docker images tags & build images in source folders
This commit is contained in:
parent
3b6289bf2c
commit
d709b49204
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
node_modules
|
||||||
|
|
||||||
|
.env
|
||||||
|
.env*
|
@ -1,459 +1,458 @@
|
|||||||
version: '2'
|
version: "2"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
redis:
|
||||||
|
image: redis
|
||||||
|
restart: always
|
||||||
|
command: [redis-server, --appendonly, "yes"]
|
||||||
|
volumes:
|
||||||
|
- redis:/data
|
||||||
|
|
||||||
redis:
|
nginx:
|
||||||
image: redis
|
image: nginx:alpine
|
||||||
restart: always
|
container_name: nginx
|
||||||
command: [ redis-server, --appendonly, 'yes' ]
|
restart: always
|
||||||
volumes:
|
ports:
|
||||||
- redis:/data
|
- 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
|
||||||
|
|
||||||
nginx:
|
dockergen:
|
||||||
image: nginx:alpine
|
image: poma/docker-gen
|
||||||
container_name: nginx
|
container_name: dockergen
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
command: -notify-sighup nginx -watch /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
|
||||||
- 80:80
|
volumes_from:
|
||||||
- 443:443
|
- nginx
|
||||||
volumes:
|
volumes:
|
||||||
- conf:/etc/nginx/conf.d
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
- vhost:/etc/nginx/vhost.d
|
|
||||||
- html:/usr/share/nginx/html
|
|
||||||
- certs:/etc/nginx/certs
|
|
||||||
logging:
|
|
||||||
driver: none
|
|
||||||
|
|
||||||
dockergen:
|
letsencrypt:
|
||||||
image: poma/docker-gen
|
image: jrcs/letsencrypt-nginx-proxy-companion
|
||||||
container_name: dockergen
|
container_name: letsencrypt
|
||||||
restart: always
|
restart: always
|
||||||
command: -notify-sighup nginx -watch /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
|
environment:
|
||||||
volumes_from:
|
NGINX_DOCKER_GEN_CONTAINER: dockergen
|
||||||
- nginx
|
volumes_from:
|
||||||
volumes:
|
- nginx
|
||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
- dockergen
|
||||||
|
|
||||||
letsencrypt:
|
# ---------------------- ETH Mainnet ----------------------- #
|
||||||
image: jrcs/letsencrypt-nginx-proxy-companion
|
|
||||||
container_name: letsencrypt
|
|
||||||
restart: always
|
|
||||||
environment:
|
|
||||||
NGINX_DOCKER_GEN_CONTAINER: dockergen
|
|
||||||
volumes_from:
|
|
||||||
- nginx
|
|
||||||
- dockergen
|
|
||||||
|
|
||||||
# ---------------------- ETH Mainnet ----------------------- #
|
eth-server:
|
||||||
|
build: .
|
||||||
|
image: tornadocash/relayer:mainnet-v4
|
||||||
|
profiles: ["eth"]
|
||||||
|
restart: always
|
||||||
|
command: server
|
||||||
|
env_file: .env.eth
|
||||||
|
environment:
|
||||||
|
NET_ID: 1
|
||||||
|
REDIS_URL: redis://redis/0
|
||||||
|
nginx_proxy_read_timeout: 600
|
||||||
|
depends_on: [redis]
|
||||||
|
|
||||||
eth-server:
|
eth-treeWatcher:
|
||||||
build: .
|
image: tornadocash/relayer:mainnet-v4
|
||||||
image: tornadorelayer:mainnet
|
profiles: ["eth"]
|
||||||
profiles: [ 'eth' ]
|
restart: always
|
||||||
restart: always
|
command: treeWatcher
|
||||||
command: server
|
env_file: .env.eth
|
||||||
env_file: .env.eth
|
environment:
|
||||||
environment:
|
NET_ID: 1
|
||||||
NET_ID: 1
|
REDIS_URL: redis://redis/0
|
||||||
REDIS_URL: redis://redis/0
|
depends_on: [redis, eth-server]
|
||||||
nginx_proxy_read_timeout: 600
|
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
eth-treeWatcher:
|
eth-priceWatcher:
|
||||||
image: tornadorelayer:mainnet
|
image: tornadocash/relayer:mainnet-v4
|
||||||
profiles: [ 'eth' ]
|
profiles: ["eth"]
|
||||||
restart: always
|
restart: always
|
||||||
command: treeWatcher
|
command: priceWatcher
|
||||||
env_file: .env.eth
|
env_file: .env.eth
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 1
|
NET_ID: 1
|
||||||
REDIS_URL: redis://redis/0
|
REDIS_URL: redis://redis/0
|
||||||
depends_on: [ redis, eth-server ]
|
depends_on: [redis, eth-server]
|
||||||
|
|
||||||
eth-priceWatcher:
|
eth-healthWatcher:
|
||||||
image: tornadorelayer:mainnet
|
image: tornadocash/relayer:mainnet-v4
|
||||||
profiles: [ 'eth' ]
|
profiles: ["eth"]
|
||||||
restart: always
|
restart: always
|
||||||
command: priceWatcher
|
command: healthWatcher
|
||||||
env_file: .env.eth
|
env_file: .env.eth
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 1
|
NET_ID: 1
|
||||||
REDIS_URL: redis://redis/0
|
REDIS_URL: redis://redis/0
|
||||||
depends_on: [ redis, eth-server ]
|
depends_on: [redis, eth-server]
|
||||||
|
|
||||||
eth-healthWatcher:
|
eth-worker1:
|
||||||
image: tornadorelayer:mainnet
|
image: tornadocash/relayer:mainnet-v4
|
||||||
profiles: [ 'eth' ]
|
profiles: ["eth"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.eth
|
env_file: .env.eth
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 1
|
NET_ID: 1
|
||||||
REDIS_URL: redis://redis/0
|
REDIS_URL: redis://redis/0
|
||||||
depends_on: [ redis, eth-server ]
|
depends_on: [redis, eth-server]
|
||||||
|
|
||||||
eth-worker1:
|
# # This is additional worker for ethereum mainnet
|
||||||
image: tornadorelayer:mainnet
|
# # So you can process transactions from multiple addresses, but before it you need to set up those addresses as workers
|
||||||
profiles: [ 'eth' ]
|
# eth-worker2:
|
||||||
restart: always
|
# image: tornadorelayer:mainnet
|
||||||
command: worker
|
# profiles: [ 'eth' ]
|
||||||
env_file: .env.eth
|
# restart: always
|
||||||
environment:
|
# command: worker
|
||||||
NET_ID: 1
|
# env_file: .env2.eth
|
||||||
REDIS_URL: redis://redis/0
|
# environment:
|
||||||
depends_on: [ redis, eth-server ]
|
# REDIS_URL: redis://redis/0
|
||||||
|
|
||||||
# # This is additional worker for ethereum mainnet
|
# # this container will proxy *.onion domain to the server container
|
||||||
# # So you can process transactions from multiple addresses, but before it you need to set up those addresses as workers
|
# # if you want to run *only* as .onion service, you don't need `nginx`, `letsencrypt`, `dockergen` containers
|
||||||
# eth-worker2:
|
# tor:
|
||||||
# image: tornadorelayer:mainnet
|
# image: strm/tor
|
||||||
# profiles: [ 'eth' ]
|
# restart: always
|
||||||
# restart: always
|
# depends_on: [server]
|
||||||
# command: worker
|
# environment:
|
||||||
# env_file: .env2.eth
|
# LISTEN_PORT: 80
|
||||||
# environment:
|
# REDIRECT: server:8000
|
||||||
# REDIS_URL: redis://redis/0
|
# # 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-----
|
||||||
|
|
||||||
# # this container will proxy *.onion domain to the server container
|
# # auto update docker containers when new image is pushed to docker hub (be careful with that)
|
||||||
# # if you want to run *only* as .onion service, you don't need `nginx`, `letsencrypt`, `dockergen` containers
|
# watchtower:
|
||||||
# tor:
|
# image: v2tec/watchtower
|
||||||
# image: strm/tor
|
# restart: always
|
||||||
# restart: always
|
# volumes:
|
||||||
# depends_on: [server]
|
# - /var/run/docker.sock:/var/run/docker.sock
|
||||||
# environment:
|
|
||||||
# LISTEN_PORT: 80
|
|
||||||
# REDIRECT: server:8000
|
|
||||||
# # 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)
|
# # this container will send Telegram notifications when other containers are stopped/restarted
|
||||||
# watchtower:
|
# # it's best to run this container on some other instance, otherwise it can't notify if the whole instance goes down
|
||||||
# image: v2tec/watchtower
|
# notifier:
|
||||||
# restart: always
|
# image: poma/docker-telegram-notifier
|
||||||
# volumes:
|
# restart: always
|
||||||
# - /var/run/docker.sock:/var/run/docker.sock
|
# 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 when other containers are stopped/restarted
|
# # this container will send Telegram notifications if specified address doesn't have enough funds
|
||||||
# # it's best to run this container on some other instance, otherwise it can't notify if the whole instance goes down
|
# monitor_mainnet:
|
||||||
# notifier:
|
# image: peppersec/monitor_eth
|
||||||
# image: poma/docker-telegram-notifier
|
# restart: always
|
||||||
# restart: always
|
# environment:
|
||||||
# volumes:
|
# TELEGRAM_NOTIFIER_BOT_TOKEN: ...
|
||||||
# - /var/run/docker.sock:/var/run/docker.sock:ro
|
# TELEGRAM_NOTIFIER_CHAT_ID: ...
|
||||||
# environment:
|
# ADDRESS: '0x0000000000000000000000000000000000000000'
|
||||||
# # How to create bot: https://core.telegram.org/bots#3-how-do-i-create-a-bot
|
# THRESHOLD: 0.5 # ETH
|
||||||
# # How to get chat id: https://stackoverflow.com/questions/32423837/telegram-bot-how-to-get-a-group-chat-id/32572159#32572159
|
# RPC_URL: https://mainnet.infura.io
|
||||||
# TELEGRAM_NOTIFIER_BOT_TOKEN: ...
|
# BLOCK_EXPLORER: etherscan.io
|
||||||
# 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
|
|
||||||
|
|
||||||
# -------------------------------------------------- #
|
# ---------------------- BSC (Binance Smart Chain) ----------------------- #
|
||||||
|
|
||||||
# ---------------------- BSC (Binance Smart Chain) ----------------------- #
|
bsc-server:
|
||||||
|
image: tornadocash/relayer:sidechain-beta
|
||||||
|
profiles: ["bsc"]
|
||||||
|
restart: always
|
||||||
|
command: server
|
||||||
|
env_file: .env.bsc
|
||||||
|
environment:
|
||||||
|
NET_ID: 56
|
||||||
|
REDIS_URL: redis://redis/1
|
||||||
|
nginx_proxy_read_timeout: 600
|
||||||
|
depends_on: [redis]
|
||||||
|
|
||||||
bsc-server:
|
bsc-healthWatcher:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'bsc' ]
|
profiles: ["bsc"]
|
||||||
restart: always
|
restart: always
|
||||||
command: server
|
command: healthWatcher
|
||||||
env_file: .env.bsc
|
env_file: .env.bsc
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 56
|
NET_ID: 56
|
||||||
REDIS_URL: redis://redis/1
|
REDIS_URL: redis://redis/1
|
||||||
nginx_proxy_read_timeout: 600
|
depends_on: [redis, bsc-server]
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
bsc-healthWatcher:
|
bsc-worker1:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'bsc' ]
|
profiles: ["bsc"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.bsc
|
env_file: .env.bsc
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 56
|
NET_ID: 56
|
||||||
REDIS_URL: redis://redis/1
|
REDIS_URL: redis://redis/1
|
||||||
depends_on: [ redis, bsc-server ]
|
depends_on: [redis, bsc-server]
|
||||||
|
|
||||||
bsc-worker1:
|
# -------------------------------------------------- #
|
||||||
image: tornadorelayer:sidechain
|
|
||||||
profiles: [ 'bsc' ]
|
|
||||||
restart: always
|
|
||||||
command: worker
|
|
||||||
env_file: .env.bsc
|
|
||||||
environment:
|
|
||||||
NET_ID: 56
|
|
||||||
REDIS_URL: redis://redis/1
|
|
||||||
depends_on: [ redis, bsc-server ]
|
|
||||||
|
|
||||||
# -------------------------------------------------- #
|
# ---------------------- Polygon (MATIC) --------------------- #
|
||||||
|
|
||||||
# ---------------------- Polygon (MATIC) --------------------- #
|
polygon-server:
|
||||||
|
image: tornadocash/relayer:sidechain-beta
|
||||||
|
profiles: ["polygon"]
|
||||||
|
restart: always
|
||||||
|
command: server
|
||||||
|
env_file: .env.polygon
|
||||||
|
environment:
|
||||||
|
NET_ID: 137
|
||||||
|
REDIS_URL: redis://redis/2
|
||||||
|
nginx_proxy_read_timeout: 600
|
||||||
|
depends_on: [redis]
|
||||||
|
|
||||||
polygon-server:
|
polygon-healthWatcher:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'polygon' ]
|
profiles: ["polygon"]
|
||||||
restart: always
|
restart: always
|
||||||
command: server
|
command: healthWatcher
|
||||||
env_file: .env.polygon
|
env_file: .env.polygon
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 137
|
NET_ID: 137
|
||||||
REDIS_URL: redis://redis/2
|
REDIS_URL: redis://redis/2
|
||||||
nginx_proxy_read_timeout: 600
|
depends_on: [redis, polygon-server]
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
polygon-healthWatcher:
|
polygon-worker1:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'polygon' ]
|
profiles: ["polygon"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.polygon
|
env_file: .env.polygon
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 137
|
NET_ID: 137
|
||||||
REDIS_URL: redis://redis/2
|
REDIS_URL: redis://redis/2
|
||||||
depends_on: [ redis, polygon-server ]
|
depends_on: [redis, polygon-server]
|
||||||
|
|
||||||
polygon-worker1:
|
# -------------------------------------------------- #
|
||||||
image: tornadorelayer:sidechain
|
|
||||||
profiles: [ 'polygon' ]
|
|
||||||
restart: always
|
|
||||||
command: worker
|
|
||||||
env_file: .env.polygon
|
|
||||||
environment:
|
|
||||||
NET_ID: 137
|
|
||||||
REDIS_URL: redis://redis/2
|
|
||||||
depends_on: [ redis, polygon-server ]
|
|
||||||
|
|
||||||
# -------------------------------------------------- #
|
# ---------------------- Gnosis (XDAI) ---------------------- #
|
||||||
|
|
||||||
# ---------------------- Gnosis (XDAI) ---------------------- #
|
gnosis-server:
|
||||||
|
image: tornadocash/relayer:sidechain-beta
|
||||||
|
profiles: ["gnosis"]
|
||||||
|
restart: always
|
||||||
|
command: server
|
||||||
|
env_file: .env.gnosis
|
||||||
|
environment:
|
||||||
|
NET_ID: 100
|
||||||
|
REDIS_URL: redis://redis/3
|
||||||
|
nginx_proxy_read_timeout: 600
|
||||||
|
depends_on: [redis]
|
||||||
|
|
||||||
gnosis-server:
|
gnosis-healthWatcher:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'gnosis' ]
|
profiles: ["gnosis"]
|
||||||
restart: always
|
restart: always
|
||||||
command: server
|
command: healthWatcher
|
||||||
env_file: .env.gnosis
|
env_file: .env.gnosis
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 100
|
NET_ID: 100
|
||||||
REDIS_URL: redis://redis/3
|
REDIS_URL: redis://redis/3
|
||||||
nginx_proxy_read_timeout: 600
|
depends_on: [redis, gnosis-server]
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
gnosis-healthWatcher:
|
gnosis-worker1:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'gnosis' ]
|
profiles: ["gnosis"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.gnosis
|
env_file: .env.gnosis
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 100
|
NET_ID: 100
|
||||||
REDIS_URL: redis://redis/3
|
REDIS_URL: redis://redis/3
|
||||||
depends_on: [ redis, gnosis-server ]
|
depends_on: [redis, gnosis-server]
|
||||||
|
|
||||||
gnosis-worker1:
|
# -------------------------------------------------- #
|
||||||
image: tornadorelayer:sidechain
|
|
||||||
profiles: [ 'gnosis' ]
|
|
||||||
restart: always
|
|
||||||
command: worker
|
|
||||||
env_file: .env.gnosis
|
|
||||||
environment:
|
|
||||||
NET_ID: 100
|
|
||||||
REDIS_URL: redis://redis/3
|
|
||||||
depends_on: [ redis, gnosis-server ]
|
|
||||||
|
|
||||||
# -------------------------------------------------- #
|
# ---------------------- AVAX ---------------------- #
|
||||||
|
|
||||||
# ---------------------- AVAX ---------------------- #
|
avax-server:
|
||||||
|
image: tornadocash/relayer:sidechain-beta
|
||||||
|
profiles: ["avax"]
|
||||||
|
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-server:
|
avax-healthWatcher:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'avax' ]
|
profiles: ["avax"]
|
||||||
restart: always
|
restart: always
|
||||||
command: server
|
command: healthWatcher
|
||||||
env_file: .env.avax
|
env_file: .env.avax
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 43114
|
NET_ID: 43114
|
||||||
REDIS_URL: redis://redis/4
|
REDIS_URL: redis://redis/4
|
||||||
nginx_proxy_read_timeout: 600
|
depends_on: [redis, avax-server]
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
avax-healthWatcher:
|
avax-worker1:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'avax' ]
|
profiles: ["avax"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.avax
|
env_file: .env.avax
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 43114
|
NET_ID: 43114
|
||||||
REDIS_URL: redis://redis/4
|
REDIS_URL: redis://redis/4
|
||||||
depends_on: [ redis, avax-server ]
|
depends_on: [redis, avax-server]
|
||||||
|
|
||||||
avax-worker1:
|
# -------------------------------------------------- #
|
||||||
image: tornadorelayer:sidechain
|
|
||||||
profiles: [ 'avax' ]
|
|
||||||
restart: always
|
|
||||||
command: worker
|
|
||||||
env_file: .env.avax
|
|
||||||
environment:
|
|
||||||
NET_ID: 43114
|
|
||||||
REDIS_URL: redis://redis/4
|
|
||||||
depends_on: [ redis, avax-server ]
|
|
||||||
|
|
||||||
# -------------------------------------------------- #
|
# ---------------------- OP ------------------------ #
|
||||||
|
|
||||||
# ---------------------- OP ------------------------ #
|
op-server:
|
||||||
|
image: tornadocash/relayer:sidechain-beta
|
||||||
|
profiles: ["op"]
|
||||||
|
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-server:
|
op-healthWatcher:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'op' ]
|
profiles: ["op"]
|
||||||
restart: always
|
restart: always
|
||||||
command: server
|
command: healthWatcher
|
||||||
env_file: .env.op
|
env_file: .env.op
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 10
|
NET_ID: 10
|
||||||
REDIS_URL: redis://redis/5
|
REDIS_URL: redis://redis/5
|
||||||
nginx_proxy_read_timeout: 600
|
depends_on: [redis, op-server]
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
op-healthWatcher:
|
op-worker1:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'op' ]
|
profiles: ["op"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.op
|
env_file: .env.op
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 10
|
NET_ID: 10
|
||||||
REDIS_URL: redis://redis/5
|
REDIS_URL: redis://redis/5
|
||||||
depends_on: [ redis, op-server ]
|
depends_on: [redis, op-server]
|
||||||
|
|
||||||
op-worker1:
|
# -------------------------------------------------- #
|
||||||
image: tornadorelayer:sidechain
|
|
||||||
profiles: [ 'op' ]
|
|
||||||
restart: always
|
|
||||||
command: worker
|
|
||||||
env_file: .env.op
|
|
||||||
environment:
|
|
||||||
NET_ID: 10
|
|
||||||
REDIS_URL: redis://redis/5
|
|
||||||
depends_on: [ redis, op-server ]
|
|
||||||
|
|
||||||
# -------------------------------------------------- #
|
# ---------------------- Arbitrum ----------------------- #
|
||||||
|
|
||||||
# ---------------------- Arbitrum ----------------------- #
|
arb-server:
|
||||||
|
image: tornadocash/relayer:sidechain-beta
|
||||||
|
profiles: ["arb"]
|
||||||
|
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-server:
|
arb-healthWatcher:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'arb' ]
|
profiles: ["arb"]
|
||||||
restart: always
|
restart: always
|
||||||
command: server
|
command: healthWatcher
|
||||||
env_file: .env.arb
|
env_file: .env.arb
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 42161
|
NET_ID: 42161
|
||||||
REDIS_URL: redis://redis/6
|
REDIS_URL: redis://redis/6
|
||||||
nginx_proxy_read_timeout: 600
|
depends_on: [redis, arb-server]
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
arb-healthWatcher:
|
arb-worker1:
|
||||||
image: tornadorelayer:sidechain
|
image: tornadocash/relayer:sidechain-beta
|
||||||
profiles: [ 'arb' ]
|
profiles: ["arb"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.arb
|
env_file: .env.arb
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 42161
|
NET_ID: 42161
|
||||||
REDIS_URL: redis://redis/6
|
REDIS_URL: redis://redis/6
|
||||||
depends_on: [ redis, arb-server ]
|
depends_on: [redis, arb-server]
|
||||||
|
|
||||||
arb-worker1:
|
# -------------------------------------------------- #
|
||||||
image: tornadorelayer:sidechain
|
|
||||||
profiles: [ 'arb' ]
|
|
||||||
restart: always
|
|
||||||
command: worker
|
|
||||||
env_file: .env.arb
|
|
||||||
environment:
|
|
||||||
NET_ID: 42161
|
|
||||||
REDIS_URL: redis://redis/6
|
|
||||||
depends_on: [ redis, arb-server ]
|
|
||||||
|
|
||||||
# -------------------------------------------------- #
|
# ---------------------- Goerli (Ethereum Testnet) ---------------------- #
|
||||||
|
|
||||||
# ---------------------- Goerli (Ethereum Testnet) ---------------------- #
|
goerli-server:
|
||||||
|
image: tornadorelayer:mainnet
|
||||||
|
profiles: ["geth"]
|
||||||
|
restart: always
|
||||||
|
command: server
|
||||||
|
env_file: .env.goerli
|
||||||
|
environment:
|
||||||
|
NET_ID: 5
|
||||||
|
REDIS_URL: redis://redis/7
|
||||||
|
nginx_proxy_read_timeout: 600
|
||||||
|
depends_on: [redis]
|
||||||
|
|
||||||
goerli-server:
|
goerli-treeWatcher:
|
||||||
image: tornadorelayer:mainnet
|
image: tornadorelayer:mainnet
|
||||||
profiles: [ 'geth' ]
|
profiles: ["goerli"]
|
||||||
restart: always
|
restart: always
|
||||||
command: server
|
command: treeWatcher
|
||||||
env_file: .env.goerli
|
env_file: .env.goerli
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 5
|
NET_ID: 5
|
||||||
REDIS_URL: redis://redis/7
|
REDIS_URL: redis://redis/7
|
||||||
nginx_proxy_read_timeout: 600
|
depends_on: [redis, goerli-server]
|
||||||
depends_on: [ redis ]
|
|
||||||
|
|
||||||
goerli-treeWatcher:
|
goerli-priceWatcher:
|
||||||
image: tornadorelayer:mainnet
|
image: tornadorelayer:mainnet
|
||||||
profiles: [ 'goerli' ]
|
profiles: ["goerli"]
|
||||||
restart: always
|
restart: always
|
||||||
command: treeWatcher
|
command: priceWatcher
|
||||||
env_file: .env.goerli
|
env_file: .env.goerli
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 5
|
NET_ID: 5
|
||||||
REDIS_URL: redis://redis/7
|
REDIS_URL: redis://redis/7
|
||||||
depends_on: [ redis, goerli-server ]
|
depends_on: [redis, goerli-server]
|
||||||
|
|
||||||
goerli-priceWatcher:
|
goerli-healthWatcher:
|
||||||
image: tornadorelayer:mainnet
|
image: tornadorelayer:mainnet
|
||||||
profiles: [ 'goerli' ]
|
profiles: ["goerli"]
|
||||||
restart: always
|
restart: always
|
||||||
command: priceWatcher
|
command: healthWatcher
|
||||||
env_file: .env.goerli
|
env_file: .env.goerli
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 5
|
NET_ID: 5
|
||||||
REDIS_URL: redis://redis/7
|
REDIS_URL: redis://redis/7
|
||||||
depends_on: [ redis, goerli-server ]
|
depends_on: [redis, goerli-server]
|
||||||
|
|
||||||
goerli-healthWatcher:
|
goerli-worker1:
|
||||||
image: tornadorelayer:mainnet
|
image: tornadorelayer:mainnet
|
||||||
profiles: [ 'goerli' ]
|
profiles: ["goerli"]
|
||||||
restart: always
|
restart: always
|
||||||
command: healthWatcher
|
command: worker
|
||||||
env_file: .env.goerli
|
env_file: .env.goerli
|
||||||
environment:
|
environment:
|
||||||
NET_ID: 5
|
NET_ID: 5
|
||||||
REDIS_URL: redis://redis/7
|
REDIS_URL: redis://redis/7
|
||||||
depends_on: [ redis, goerli-server ]
|
depends_on: [redis, goerli-server]
|
||||||
|
# -------------------------------------------------- #
|
||||||
goerli-worker1:
|
|
||||||
image: tornadorelayer:mainnet
|
|
||||||
profiles: [ 'goerli' ]
|
|
||||||
restart: always
|
|
||||||
command: worker
|
|
||||||
env_file: .env.goerli
|
|
||||||
environment:
|
|
||||||
NET_ID: 5
|
|
||||||
REDIS_URL: redis://redis/7
|
|
||||||
depends_on: [ redis, goerli-server ]
|
|
||||||
# -------------------------------------------------- #
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
conf:
|
conf:
|
||||||
vhost:
|
vhost:
|
||||||
html:
|
html:
|
||||||
certs:
|
certs:
|
||||||
redis:
|
redis:
|
||||||
|
17
install.sh
17
install.sh
@ -47,6 +47,14 @@ function install_requred_packages(){
|
|||||||
echo -e "\nAll required packages installed successfully";
|
echo -e "\nAll required packages installed successfully";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function install_node(){
|
||||||
|
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash;
|
||||||
|
. ~/.nvm/nvm.sh;
|
||||||
|
. ~/.profile;
|
||||||
|
. ~/.bashrc;
|
||||||
|
nvm install 14.21.3;
|
||||||
|
}
|
||||||
|
|
||||||
function install_repositories(){
|
function install_repositories(){
|
||||||
git clone $relayer_soft_git_repo -b main-v4 $relayer_folder
|
git clone $relayer_soft_git_repo -b main-v4 $relayer_folder
|
||||||
git clone $relayer_soft_git_repo -b mainnet-v4 $relayer_mainnet_soft_source_folder;
|
git clone $relayer_soft_git_repo -b mainnet-v4 $relayer_mainnet_soft_source_folder;
|
||||||
@ -73,18 +81,18 @@ function configure_firewall(){
|
|||||||
function configure_nginx_reverse_proxy(){
|
function configure_nginx_reverse_proxy(){
|
||||||
systemctl stop apache2;
|
systemctl stop apache2;
|
||||||
|
|
||||||
cp $relayer_mainnet_soft_source_folder/tornado.conf /etc/nginx/sites-available/default;
|
cp $relayer_folder/tornado.conf /etc/nginx/sites-available/default;
|
||||||
echo "stream { map_hash_bucket_size 128; map_hash_max_size 128; include /etc/nginx/conf.d/streams/*.conf; }" >> /etc/nginx/nginx.conf;
|
echo "stream { map_hash_bucket_size 128; map_hash_max_size 128; include /etc/nginx/conf.d/streams/*.conf; }" >> /etc/nginx/nginx.conf;
|
||||||
mkdir /etc/nginx/conf.d/streams;
|
mkdir /etc/nginx/conf.d/streams;
|
||||||
cp $relayer_mainnet_soft_source_folder/tornado-stream.conf /etc/nginx/conf.d/streams/tornado-stream.conf;
|
cp $relayer_folder/tornado-stream.conf /etc/nginx/conf.d/streams/tornado-stream.conf;
|
||||||
|
|
||||||
systemctl restart nginx;
|
systemctl restart nginx;
|
||||||
systemctl stop nginx;
|
systemctl stop nginx;
|
||||||
}
|
}
|
||||||
|
|
||||||
function build_relayer_docker_containers(){
|
function build_relayer_docker_containers(){
|
||||||
docker build -t tornadorelayer:mainnet $relayer_mainnet_soft_source_folder;
|
cd $relayer_mainnet_soft_source_folder && npm run build;
|
||||||
docker build -t tornadorelayer:sidechain $relayer_sidechains_soft_source_folder;
|
cd $relayer_sidechains_soft_source_folder && npm run build;
|
||||||
}
|
}
|
||||||
|
|
||||||
function prepare_environments(){
|
function prepare_environments(){
|
||||||
@ -95,6 +103,7 @@ function prepare_environments(){
|
|||||||
|
|
||||||
function main(){
|
function main(){
|
||||||
install_requred_packages;
|
install_requred_packages;
|
||||||
|
install_node;
|
||||||
install_repositories;
|
install_repositories;
|
||||||
configure_firewall;
|
configure_firewall;
|
||||||
configure_nginx_reverse_proxy;
|
configure_nginx_reverse_proxy;
|
||||||
|
Loading…
Reference in New Issue
Block a user