28 lines
959 B
Docker
28 lines
959 B
Docker
|
FROM cerc/fixturenet-eth-genesis-postmerge:local as fnetgen
|
||
|
|
||
|
# Using the same golang image as used to build geth: https://github.com/cerc-io/go-ethereum/blob/HEAD/Dockerfile
|
||
|
FROM golang:1.21-alpine as delve
|
||
|
RUN go install github.com/go-delve/delve/cmd/dlv@latest
|
||
|
|
||
|
FROM cerc/plugeth-statediff:local as statediff
|
||
|
# FIXME: fork of plugeth, use stock after upstreaming patches
|
||
|
FROM cerc/plugeth:local as geth
|
||
|
|
||
|
FROM alpine:3.18
|
||
|
|
||
|
RUN apk add --no-cache bash wget python3 bind-tools postgresql-client
|
||
|
|
||
|
COPY run-el.sh /opt/testnet/run.sh
|
||
|
|
||
|
COPY --from=delve /go/bin/dlv /usr/local/bin/
|
||
|
COPY --from=geth /usr/local/bin/geth /usr/local/bin/
|
||
|
COPY --from=fnetgen /opt/genesis /opt/testnet
|
||
|
COPY --from=statediff /usr/local/lib/statediff.so /usr/local/lib/plugeth/
|
||
|
|
||
|
# Initialize the geth db with our config
|
||
|
RUN geth --datadir ~/ethdata --state.scheme hash \
|
||
|
init /opt/testnet/build/el/geth.json && \
|
||
|
rm -f ~/ethdata/geth/nodekey
|
||
|
|
||
|
ENTRYPOINT ["/opt/testnet/run.sh"]
|