version: '3.8'

services:
  geth:
    build:
      context: .
      dockerfile: Dockerfile
    image: limechain-geth:latest
    ports:
      - "8545:8545" # JSON-RPC HTTP
      - "8546:8546" # WebSocket
      - "30303:30303" # P2P
      - "30303:30303/udp" # P2P discovery
    volumes:
      - geth-data:/root/.ethereum
    command: >
      --dev --http --http.addr=0.0.0.0 --http.api=eth,net,web3,personal,miner,debug,txpool --http.corsdomain="*" --ws --ws.addr=0.0.0.0 --ws.api=eth,net,web3 --ws.origins="*" --allow-insecure-unlock --mine --networkid=1337
    restart: unless-stopped

volumes:
  geth-data:
