-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathdocker-compose-holesky.yaml
154 lines (140 loc) · 5.47 KB
/
docker-compose-holesky.yaml
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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
version: "3"
secrets:
anvil_fork_url_holesky:
file: anvil_fork_url_holesky.txt
networks:
coprocessor-network:
name: coprocessor-network
driver: bridge
services:
anvil:
build:
context: .
dockerfile: Dockerfile-anvil-latest
container_name: anvil
ports:
- 127.0.0.1:8545:8545
volumes:
- ./:/cartesi-lambada-coprocessor/
command: /cartesi-lambada-coprocessor/env/eigenlayer/anvil/run-anvil-holesky.sh
healthcheck:
test: bash -c "[ -f /cartesi-lambada-coprocessor/env/eigenlayer/anvil/holesky-operators-ready.flag ]"
interval: 3s
retries: 300
start_period: 15s
networks:
coprocessor-network:
aliases:
- anvil
secrets:
- anvil_fork_url_holesky
operator:
image: ghcr.io/zippiehq/cartesi-coprocessor-operator:latest
container_name: cartesi-coprocessor-operator
ports:
- 127.0.0.1:3033:3033
- 127.0.0.1:5001:5001
depends_on:
anvil:
condition: service_healthy
setup-operator:
condition: service_completed_successfully
volumes:
- ./demo-task:/operator/demo-task
environment:
SNAPSHOT_DIR: demo-task
BLS_PRIVATE_KEY: ${OPERATOR_BLS_KEY:-13219903133444082589215719304558031505888625714969126489655808257015621956774}
IPFS_DAEMON_OFFLINE: ${IPFS_DAEMON_ONLINE-true}
networks:
- coprocessor-network
setup-operator:
image: ghcr.io/zippiehq/cartesi-coprocessor-operator:latest
container_name: cartesi-coprocessor-setup-operator
depends_on:
anvil:
condition: service_healthy
volumes:
- ./contracts/script/output/coprocessor_deployment_output_holesky.json:/operator/contracts/script/output/coprocessor_deployment_output_holesky.json
- ./contracts/script/input/deployment_parameters_holesky.json:/operator/contracts/script/input/deployment_parameters_holesky.json
environment:
OPERATOR_BLS_KEY: ${OPERATOR_BLS_KEY:-13219903133444082589215719304558031505888625714969126489655808257015621956774}
command: bash -c "/operator/setup-operator --operator-private-key 0xc276a0e2815b89e9a3d8b64cb5d745d5b4f6b84531306c97aad82156000a7dd7 --http-endpoint http://anvil:8545 --chain-writer-reader-addresses contracts/script/input/deployment_parameters_holesky.json --avs-registry-writer-addresses contracts/script/output/coprocessor_deployment_output_holesky.json --socket http://operator:3033"
networks:
- coprocessor-network
postgres:
image: postgres:latest
environment:
POSTGRES_PASSWORD: password
POSTGRES_USER: user
POSTGRES_DB: db
networks:
- coprocessor-network
solver:
image: ghcr.io/zippiehq/cartesi-coprocessor-solver:latest
container_name: cartesi-coprocessor-solver
ports:
- 127.0.0.1:3034:3034
depends_on:
anvil:
condition: service_healthy
setup-operator:
condition: service_completed_successfully
volumes:
- ./config-holesky.toml:/cartesi-coprocessor-solver/config.toml
environment:
- RUST_LOG=trace
networks:
- coprocessor-network
otterscan:
image: otterscan/otterscan:v2.6.1
ports:
- 127.0.0.1:5100:80
environment:
ERIGON_URL: http://127.0.0.1:8545
OTTERSCAN_CONFIG: |
{
"erigonURL": "http://127.0.0.1:8545",
"sourcifySources": {
"ipfs": "http://127.0.0.1:5555/repository",
"central_server": "http://127.0.0.1:5555/repository"
}
}
depends_on:
anvil:
condition: service_healthy
setup-operator:
condition: service_completed_successfully
networks:
- coprocessor-network
sourcify:
image: ghcr.io/ethereum/sourcify/server:latest
ports:
- 127.0.0.1:5555:5555
volumes:
- ./sourcify-chains.json:/home/app/services/server/dist/sourcify-chains.json
- ./local.js:/home/app/services/server/dist/config/local.js
environment:
NODE_ENV: production
depends_on:
anvil:
condition: service_healthy
setup-operator:
condition: service_completed_successfully
networks:
- coprocessor-network
foundry:
image: ghcr.io/foundry-rs/foundry
platform: linux/amd64
depends_on:
anvil:
condition: service_healthy
setup-operator:
condition: service_completed_successfully
volumes:
- ./contracts:/contracts
entrypoint: sh
command: >
-c "cd contracts && forge verify-contract 0x2ac430E52F47420A00984E11Ef0DDba80652419a src/Coprocessor.sol:Coprocessor --verifier sourcify --verifier-url http://sourcify:5555 --rpc-url http://anvil:8545 --chain-id 17000 --constructor-args 0x0000000000000000000000001613beb3b2c4f22ee086b2b38c1476a3ce7f78e8 --num-of-optimizations 200 --compiler-version 0.8.12 --evm-version london
&& forge verify-contract 0x512a0E8bAeb6Ac3D52A11780c92517627005b0b1 lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol:TransparentUpgradeableProxy --verifier sourcify --verifier-url http://sourcify:5555 --rpc-url http://anvil:8545 --chain-id 17000 --constructor-args 0x000000000000000000000000c3e53f4d16ae77db1c982e75a937b9f60fe6369000000000000000000000000067d269191c92caf3cd7723f116c85e6e9bf5593300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000 --num-of-optimizations 200 --compiler-version 0.8.12 --evm-version london"
networks:
- coprocessor-network