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"]