-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
114 lines (111 loc) · 4.19 KB
/
docker-compose.yml
File metadata and controls
114 lines (111 loc) · 4.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
services:
avian:
build:
context: .
dockerfile: Dockerfile.avian
args:
AVIAN_VERSION: ${AVIAN_VERSION:-master}
container_name: avian-node-${NETWORK:-mainnet}
restart: unless-stopped
stop_grace_period: 60s
ports:
- "${AVN_RPC_PORT:-7896}:${AVN_RPC_PORT:-7896}"
- "${AVN_P2P_PORT:-7895}:${AVN_P2P_PORT:-7895}"
- "28332:28332" # ZMQ hashblock
volumes:
- avian-data-${NETWORK:-mainnet}:/home/avian/.avian
environment:
- AVN_RPC_USER=${AVN_RPC_USER}
- AVN_RPC_PASS=${AVN_RPC_PASS}
- AVN_RPC_PORT=${AVN_RPC_PORT:-7896}
- AVN_P2P_PORT=${AVN_P2P_PORT:-7895}
- AVN_ZMQ_PORT=${AVN_ZMQ_PORT:-28332}
- TESTNET=${TESTNET:-false}
networks:
- avian-net
healthcheck:
test: ["CMD", "/usr/local/bin/health-check.sh"]
interval: 30s
timeout: 10s
retries: 5
start_period: 60s
stratum-proxy:
build:
context: .
dockerfile: Dockerfile
container_name: avian-stratum-proxy-${NETWORK:-mainnet}
restart: unless-stopped
ports:
- "${STRATUM_PORT_X16RT:-54321}:${STRATUM_PORT_X16RT:-54321}"
- "${STRATUM_PORT_MINOTAURX:-54322}:${STRATUM_PORT_MINOTAURX:-54322}"
- "${DASHBOARD_PORT:-8080}:${DASHBOARD_PORT:-8080}"
depends_on:
avian:
condition: service_healthy
environment:
- AVN_RPC_HOST=avian
- AVN_RPC_PORT=${AVN_RPC_PORT:-8766}
- AVN_RPC_USER=${AVN_RPC_USER}
- AVN_RPC_PASS=${AVN_RPC_PASS}
- STRATUM_PORT_X16RT=${STRATUM_PORT_X16RT:-54321}
- STRATUM_PORT_MINOTAURX=${STRATUM_PORT_MINOTAURX:-54322}
- TESTNET=${TESTNET:-false}
- NETWORK=${NETWORK:-mainnet}
- LOG_LEVEL=${LOG_LEVEL:-INFO}
- SHOW_JOBS=${SHOW_JOBS:-false}
- STATIC_SHARE_DIFFICULTY_X16RT=${STATIC_SHARE_DIFFICULTY_X16RT:-1.0}
- STATIC_SHARE_DIFFICULTY_MINOTAURX=${STATIC_SHARE_DIFFICULTY_MINOTAURX:-0.001}
- PROXY_SIGNATURE=${PROXY_SIGNATURE:-/avian-stratum-proxy/}
- ENABLE_ZMQ=${ENABLE_ZMQ:-true}
- AVN_ZMQ_ENDPOINT=${AVN_ZMQ_ENDPOINT:-tcp://avian:28332}
- DISCORD_WEBHOOK_URL=${DISCORD_WEBHOOK_URL}
- TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN}
- TELEGRAM_CHAT_ID=${TELEGRAM_CHAT_ID}
- ENABLE_DASHBOARD=${ENABLE_DASHBOARD:-true}
- DASHBOARD_PORT=${DASHBOARD_PORT:-8080}
- ENABLE_DATABASE=${ENABLE_DATABASE:-true}
- ENABLE_VARDIFF=${ENABLE_VARDIFF:-true}
- VARDIFF_TARGET_SHARE_TIME=${VARDIFF_TARGET_SHARE_TIME:-15.0}
- VARDIFF_MIN_DIFFICULTY=${VARDIFF_MIN_DIFFICULTY:-0.1}
- VARDIFF_MAX_DIFFICULTY=${VARDIFF_MAX_DIFFICULTY:-1000000.0}
- VARDIFF_START_DIFFICULTY=${VARDIFF_START_DIFFICULTY:-1.0}
- VARDIFF_MIN_DIFFICULTY_CPU=${VARDIFF_MIN_DIFFICULTY_CPU:-0.0001}
- VARDIFF_MAX_DIFFICULTY_CPU=${VARDIFF_MAX_DIFFICULTY_CPU:-10.0}
- VARDIFF_START_DIFFICULTY_CPU=${VARDIFF_START_DIFFICULTY_CPU:-0.001}
- VARDIFF_RETARGET_SHARES=${VARDIFF_RETARGET_SHARES:-20}
- VARDIFF_RETARGET_TIME=${VARDIFF_RETARGET_TIME:-300.0}
- VARDIFF_UP_STEP=${VARDIFF_UP_STEP:-2.0}
- VARDIFF_DOWN_STEP=${VARDIFF_DOWN_STEP:-0.5}
- VARDIFF_EMA_ALPHA=${VARDIFF_EMA_ALPHA:-0.3}
- VARDIFF_INACTIVITY_LOWER=${VARDIFF_INACTIVITY_LOWER:-90.0}
- VARDIFF_INACTIVITY_MULTIPLES=${VARDIFF_INACTIVITY_MULTIPLES:-6.0}
- VARDIFF_INACTIVITY_DROP_FACTOR=${VARDIFF_INACTIVITY_DROP_FACTOR:-0.5}
- VARDIFF_STATE_PATH_X16RT=data/vardiff_state_x16rt.json
- VARDIFF_STATE_PATH_MINOTAURX=data/vardiff_state_minotaurx.json
- VARDIFF_WARM_START_MINUTES=${VARDIFF_WARM_START_MINUTES:-60}
- VARDIFF_CHAIN_HEADROOM=${VARDIFF_CHAIN_HEADROOM:-0.9}
command: ["/app/entrypoint.sh"]
networks:
- avian-net
volumes:
- ./submit_history/${NETWORK:-mainnet}:/app/submit_history
- ./data/${NETWORK:-mainnet}:/app/data
healthcheck:
test:
[
"CMD",
"python",
"-c",
"import socket; s=socket.socket(); s.connect(('localhost', ${STRATUM_PORT_X16RT:-54321})); s.close()",
]
interval: 30s
timeout: 10s
retries: 3
networks:
avian-net:
driver: bridge
volumes:
avian-data-mainnet:
driver: local
avian-data-testnet:
driver: local