-
Notifications
You must be signed in to change notification settings - Fork 6
/
docker-compose.besu-prysm.yml
120 lines (115 loc) · 3.57 KB
/
docker-compose.besu-prysm.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
115
116
117
118
119
120
version: "3.8"
services:
besu:
image: hyperledger/besu:$BESU_VERSION
container_name: besu
volumes:
- $EXECUTION_DATA_VOLUME:/execution_data
- $CONFIGS_VOLUME:/configs
restart: unless-stopped
stop_signal: SIGINT
stop_grace_period: 2m
command: >
--data-path=/execution_data
--genesis-file=/configs/genesis.json
--min-gas-price=1000000000
--network-id=$LUKSO_NETWORK_ID
--engine-jwt-secret=/configs/jwt.hex
--nat-method=DOCKER
--p2p-host="$EXTERNAL_IP"
--max-peers=25
--rpc-http-enabled
--rpc-http-host="0.0.0.0"
--rpc-http-apis="ETH,NET"
--rpc-http-cors-origins="*"
--bootnodes="$EXECUTION_BOOTSTRAP_NODE_1,$EXECUTION_BOOTSTRAP_NODE_2"
--metrics-enabled
--metrics-host="0.0.0.0"
--ethstats="${NODE_NAME}:${ETH_STATS_SECRET}@${ETH_STATS_ADDRESS}"
network_mode: host
logging:
driver: "local"
options:
max-size: "100m"
prysm_beacon:
image: prysmaticlabs/prysm-beacon-chain:$PRYSM_BEACON_VERSION
container_name: prysm_beacon
depends_on:
- besu
volumes:
- $CONSENSUS_DATA_VOLUME:/consensus_data
- $CONFIGS_VOLUME:/configs
restart: unless-stopped
stop_signal: SIGINT
stop_grace_period: 2m
command: >
--accept-terms-of-use
--genesis-state=/configs/genesis.ssz
--chain-config-file=/configs/config.yaml
--datadir=/consensus_data
--bootstrap-node $CONSENSUS_BOOTSTRAP_NODE_1,$CONSENSUS_BOOTSTRAP_NODE_2
--execution-endpoint=http://localhost:8551
--jwt-secret=/configs/jwt.hex
--suggested-fee-recipient $FEE_RECIPIENT
--min-sync-peers=1
--monitoring-host 0.0.0.0
--grpc-gateway-host 0.0.0.0
--rpc-host 0.0.0.0
--verbosity $PRYSM_VERBOSITY
--p2p-max-peers 70
--subscribe-all-subnets
--minimum-peers-per-subnet 1
--contract-deployment-block 0
--p2p-host-ip $EXTERNAL_IP
--checkpoint-sync-url=$CHECKPOINT_SYNC_URL
--genesis-beacon-api-url=$CHECKPOINT_SYNC_URL
network_mode: host
logging:
driver: "local"
options:
max-size: "100m"
prysm_validator_import:
image: prysmaticlabs/prysm-validator:$PRYSM_BEACON_VERSION
container_name: prysm_validator_import
volumes:
- $KEYSTORE_VOLUME:/keystore
- $VALIDATOR_DATA_VOLUME:/validator_data
- $TMP_VOLUME:/tmp/secrets
command: >
accounts import
--accept-terms-of-use
--keys-dir=/keystore
--wallet-dir=/validator_data/wallet
--wallet-password-file=/tmp/secrets/password.txt
--account-password-file=/tmp/secrets/password.txt
prysm_validator:
image: prysmaticlabs/prysm-validator:$PRYSM_BEACON_VERSION
container_name: prysm_validator
depends_on:
prysm_beacon:
condition: service_started
prysm_validator_import:
condition: service_completed_successfully
volumes:
- $KEYSTORE_VOLUME:/keystore
- $VALIDATOR_DATA_VOLUME:/validator_data
- $CONFIGS_VOLUME:/configs
- $TMP_VOLUME:/tmp/secrets
restart: unless-stopped
stop_signal: SIGINT
stop_grace_period: 2m
command: >
--accept-terms-of-use
--datadir /validator_data
--wallet-dir /validator_data/wallet
--wallet-password-file /tmp/secrets/password.txt
--chain-config-file /configs/config.yaml
--monitoring-host 0.0.0.0
--grpc-gateway-host 0.0.0.0
--rpc-host 0.0.0.0
--suggested-fee-recipient $FEE_RECIPIENT
network_mode: host
logging:
driver: "local"
options:
max-size: "100m"