This repository has been archived by the owner on Jan 2, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrocketpool.yml
115 lines (109 loc) · 3.03 KB
/
rocketpool.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
version: "3.9"
services:
node:
image: rocketpool/smartnode:v1.11.0
environment:
- ENV=/root/.profile
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- rocketpool-data:/.rocketpool
entrypoint: ["/bin/sh", "-c"]
command:
- |
rm /.dockerenv
mv /go/bin/rocketpool /go/bin/rocketpoold
apk update
apk add docker-cli
wget https://github.com/rocket-pool/smartnode-install/releases/latest/download/rocketpool-cli-linux-amd64 -O /usr/local/bin/rocketpool
chmod +x /usr/local/bin/rocketpool
echo 'alias rp="rocketpool -d /go/bin/rocketpoold -c /.rocketpool --allow-root"' >/root/.profile
mkdir -p /.rocketpool/data
exec /go/bin/rocketpoold node
deploy:
mode: replicated
replicas: 1
placement:
constraints: ["node.role == manager"]
resources:
reservations:
memory: 50M
watchtower:
image: rocketpool/smartnode:v1.11.0
command: watchtower
volumes:
- rocketpool-data:/.rocketpool
deploy:
mode: replicated
replicas: 1
placement:
constraints: ["node.role == worker"]
validator:
image: sigp/lighthouse:latest
volumes:
- rocketpool-data:/.rocketpool
entrypoint:
- lighthouse
- vc
- --datadir
- /.rocketpool/data/validators/lighthouse
- --init-slashing-protection
- --beacon-nodes
- https://goerlicl-a.example.com,https://goerlicl-b.example.com
- --graffiti
- "RP Lighthouse"
- --network
- prater
deploy:
mode: replicated
replicas: 1
placement:
constraints: ["node.role == worker"]
haproxy:
image: haproxy:latest
user: root
entrypoint: ["/bin/sh", "-c"]
command:
- |
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get install -y curl jq bc ca-certificates
haproxy -f /usr/local/etc/haproxy/haproxy.cfg
networks:
default:
aliases:
- goerliws-lb.example.com
- goerli-lb.example.com
- goerlicl-lb.example.com
configs:
- source: goerli-haproxy.cfg
target: /usr/local/etc/haproxy/haproxy.cfg
- source: check-ecsync.sh
target: /var/lib/haproxy/check-ecsync.sh
mode: 0555
- source: check-ccsync.sh
target: /var/lib/haproxy/check-ccsync.sh
mode: 0555
deploy:
mode: replicated
replicas: 2
placement:
constraints: ["node.role == worker"]
healthcheck:
test: curl -sS http://localhost:8405/metrics || exit 1
interval: 60s
retries: 5
start_period: 20s
timeout: 10s
configs:
goerli-haproxy.cfg:
external: true
check-ecsync.sh:
external: true
check-ccsync.sh:
external: true
volumes:
rocketpool-data:
driver: local
driver_opts:
type: nfs
o: "addr=MYADDR.efs.us-east-2.amazonaws.com,nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport"
device: "MYADDR.efs.us-east-2.amazonaws.com:/rocketpool"