docker-compose.yml
version: '3.3'
services:
ethereum_etl:
build:
context: .
volumes:
- ./var/log/:/ethereum-etl/output:rw
#- /root/go/src/github.com/ethereum/go-ethereum/build/bin/data:/ethereum-etl/ipc #failed ipc is interface not data
networks:
- etl
networks:
etl:
driver: bridge
DOCKERFILE
FROM python:3.6-alpine
MAINTAINER Eric Lim
ENV PROJECT_DIR=ethereum-etl
RUN mkdir /$PROJECT_DIR
WORKDIR /$PROJECT_DIR
RUN apk add --no-cache gcc musl-dev #for C libraries:
RUN pip install --upgrade pip && pip install ethereum-etl
#ENTRYPOINT ["python", "ethereumetl"]
ENTRYPOINT ["ethereumetl"]
CMD ["export_all", "-s", "0", "-e", "500000", "-p", "http://xxx.xxx.xxx.xxx:8545", "-o", "output"]
-s -e -p -o see
https://github.com/blockchain-etl/ethereum-etl
Import:-p must give port. http 80, https 443 so custom geth port usually 8545
--rpcaddr "0.0.0.0" or special ip
geth --datadir ./gethdata --networkid xxxxxx --rpcapi "db,eth,net,web3,personal" --rpc --rpccorsdomain "*" --rpcaddr "0.0.0.0" --port 30303 console