-
Notifications
You must be signed in to change notification settings - Fork 16
/
docker-compose-validator.yml
114 lines (114 loc) · 4.24 KB
/
docker-compose-validator.yml
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
version: "3.7"
services:
geth:
image: "ethereum/client-go:v1.13.15"
stop_grace_period: 300s
command:
- --http
- --http.api=eth,web3,txpool,net
- --http.addr=0.0.0.0
- --authrpc.vhosts=*
- --http.vhosts=*
- --http.corsdomain=*
- --authrpc.addr=0.0.0.0
- --authrpc.jwtsecret=/jwtsecret
- --datadir=/data
- --state.scheme=path
- --syncmode=full
- --networkid=${CHAIN_ID:-32382}
- --nat=extip:$EXTERNAL_IP
- --port=$GETH_P2P_PORT
- --bootnodes=enode://cf21a8a82a4c0f77e6815db01aff0811cbc5135c4f427a3028ee71f2912940f678bba332cf32de39b3812a7faab59950683c6310d2d2728c80ea101d8b38ee19@93.115.27.150:30303,enode://39cb0184bb51ab5f0f970b49751ed5749978801997668c40ef378285c1a2d2b61b2cd47a159e5547214d208d7da28a418239505ddf2be06e996adc4895c1800a@84.32.189.87:30303,enode://59c9f9db0c2b2b99d84c1fb08c122902b1449ec8b5bdd9d737cc15f18918894a03a31c681a520fac23591c16c02a3bd1615d880025020ed4cb9bfb529eb5c4b0@84.32.186.13:30303,enode://727d0eac30709e959c6589ee8598438aa1035238e78a4d076fbeac66f0d476623954cc784c9d31faea162d7f28d6ab0b0a6a190a7f2f6152de09bec1ef0f564f@93.115.27.114:30303
- --log.file=/logs/geth.log
ports:
- $GETH_PORT:8545
- $GETH_P2P_PORT:$GETH_P2P_PORT
logging:
options:
max-size: "10m"
max-file: "3"
volumes:
- ./root_signer:/data
- ./jwtsecret:/jwtsecret
- ./logs:/logs
beacon-chain:
image: "gcr.io/prysmaticlabs/prysm/beacon-chain:v4.2.1"
command:
- --datadir=/data
# No peers to sync with in this testnet, so setting to 0
- --min-sync-peers=2
- --minimum-peers-per-subnet=2
- --genesis-state=/files/genesis.ssz
- --bootstrap-node=enr:-LG4QNQbzpVjGdqC-Elk9JUABL5P-UGOBGaXDgAeRW6SevulahyjcC8uNyLYBs1FiqRc8JEHoijqUBBtVPoQ8-F5J4iGAZJMwgVNh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhFQgvF-Jc2VjcDI1NmsxoQLyirWTAY--P_8vYX0N0AtINF5p37yEP6N8QI3EoCUBkYN1ZHCCMtQ,enr:-LG4QGpEySaf6ftrgKx_SVM4-BeR_P01YW1QE2Qetr3Mo-1qDqeFcioac6neMHmxRPq4Vd3UNenJSTr1Fs51aPKhqpOGAZKubWjyh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhLzWgb6Jc2VjcDI1NmsxoQLyirWTAY--P_8vYX0N0AtINF5p37yEP6N8QI3EoCUBkYN1ZHCCMtQ
- --chain-config-file=/files/config.yml
- --chain-id=${CHAIN_ID:-32382}
- --rpc-host=0.0.0.0
- --grpc-gateway-host=0.0.0.0
- --monitoring-host=0.0.0.0
- --grpc-gateway-corsdomain=*
- --execution-endpoint=http://geth:8551
- --accept-terms-of-use
- --jwt-secret=/jwtsecret
- --suggested-fee-recipient=$REWARD_RECIPIENT_ADDRESS
- --verbosity=debug
- --p2p-host-ip=$EXTERNAL_IP
- --p2p-tcp-port=$BECONCHAIN_PORT
- --p2p-udp-port=$BECONCHAIN_PORT
- --p2p-static-id
- --enable-debug-rpc-endpoints
- --log-file=/logs/beacon.log
ports:
- $BECONCHAIN_PORT:$BECONCHAIN_PORT/tcp
- $BECONCHAIN_PORT:$BECONCHAIN_PORT/udp
- $BECONCHAIN_MONITOR_PORT:8080/tcp
volumes:
- ./root_beaconchain:/data
- ./files:/files
- ./jwtsecret:/jwtsecret
- ./logs:/logs
logging:
options:
max-size: "10m"
max-file: "3"
depends_on:
geth:
condition: service_started
validator:
image: "gcr.io/prysmaticlabs/prysm/validator:v4.2.1"
command:
- --beacon-rpc-provider=beacon-chain:4000
- --datadir=/data
- --accept-terms-of-use
- --chain-config-file=/files/config.yml
- --wallet-dir=/files/wallet
- --wallet-password-file=/files/validator.txt
- --enable-builder
- --monitoring-host=0.0.0.0
- --log-file=/logs/validator.log
volumes:
- ./root_validator:/data
- ./files:/files
- ./logs:/logs
ports:
- $VALIDATOR_MONITOR_PORT:8081/tcp
logging:
options:
max-size: "10m"
max-file: "3"
depends_on:
beacon-chain:
condition: service_started
logrotate:
image: blacklabelops/logrotate
volumes:
- "./logs:/var/log/logs"
environment:
- LOGS_DIRECTORIES=/var/log/logs
- LOGROTATE_INTERVAL=daily
- LOG_FILE_ENDINGS=log
- LOGROTATE_COPIES=30
- LOGROTATE_COMPRESSION=compress
logging:
options:
max-size: "10m"
max-file: "3"