Multi-Cloud Deployment (#1)

* Introduce instances list to scale bots and add config templating

* Use env var for wallet address if not provided as path param

* Expose SOL price as metric

* Update docs

* Add auto-swap

* Add Panopticon

* implement backoff stategy in autoswap

* Add retry logic for withdraw and swap

* bump drift-sdk, update ctl.sh and docs

* Update filler bot, add tx metrics

* Add user-metrics

* Update build and dashboard
This commit is contained in:
Patrick Balsiger
2024-04-28 07:25:08 +02:00
committed by GitHub
parent 6bd2c3367b
commit f05fac48ca
58 changed files with 9783 additions and 319 deletions

View File

@@ -2,25 +2,29 @@ version: '3'
services:
# ---------------------------------------------------
# Bot
# ---------------------------------------------------
keeper:
image: ${DOCKER_IMAGE}
restart: unless-stopped
env_file: .env
volumes:
- ./config.yaml:/app/config.yaml
# ---------------------------------------------------
# Monitoring
# ---------------------------------------------------
auto-swap:
image: ${DOCKER_IMAGE_AUTO_SWAP}
build:
context: auto-swap
env_file: .env.autoswap
restart: unless-stopped
wallet-tracker:
image: ${DOCKER_IMAGE_WALLET_TRACKER}
build:
context: wallet-tracker
env_file: .env
restart: unless-stopped
user-metrics:
image: wirelos/user-metrics:0.1.0
env_file: .env.user-metrics
restart: unless-stopped
prometheus:
image: prom/prometheus
container_name: prometheus
@@ -51,12 +55,10 @@ services:
grafana:
image: grafana/grafana
container_name: grafana
env_file: .env.monitoring
ports:
- 3000:3000
restart: unless-stopped
environment:
- GF_SECURITY_ADMIN_USER=admin
- GF_SECURITY_ADMIN_PASSWORD=${GRAFANA_ADMIN_PASSWORD}
volumes:
- ./grafana/provisioning:/etc/grafana/provisioning
- ./grafana/dashboards:/var/lib/grafana/dashboards