Skip to main content

Ethereum Staking Node

PyPI version Python 3.11+ License: MIT

A complete Ethereum validator infrastructure running Geth (execution) + Prysm (consensus) + MEV-Boost on AWS ECS.

🏗️ Architecture

graph TB
    subgraph Docker["Docker Container"]
        subgraph Node["staker.node (Process Orchestrator)"]
            Geth["Geth<br/>(Execution)"]
            Beacon["Beacon Chain<br/>(Consensus)"]
            Validator["Validator"]
            MEV["MEV-Boost"]
            VPN["VPN<br/>(optional)"]
        end
    end
    
    subgraph AWS["AWS"]
        ECS["ECS (EC2 Mode)"]
        EBS["EBS Volume"]
        Snapshot["EBS Snapshots"]
        SSM["SSM Parameter Store"]
        Lambda["Snapshot Validator<br/>(Lambda)"]
        ASG["Auto Scaling Group"]
    end
    
    subgraph External["External"]
        Relays["MEV Relays"]
        Peers["P2P Network"]
    end
    
    Docker --> ECS
    ECS --> EBS
    Node --> Snapshot
    Node --> SSM
    Lambda --> SSM
    Lambda --> Snapshot
    MEV --> Relays
    Geth --> Peers
    Beacon --> Peers
    ASG --> ECS

💖 Support

Love this tool? Your support means the world! ❤️

Currency Address QR
₿ BTC bc1qwn7ea6s8wqx66hl5rr2supk4kv7qtcxnlqcqfk
Ξ ETH 0x7cdB1861AC1B4385521a6e16dF198e7bc43fDE5f
ɱ XMR 463fMSWyDrk9DVQ8QCiAir8TQd4h3aRAiDGA8CKKjknGaip7cnHGmS7bQmxSiS2aYtE9tT31Zf7dSbK1wyVARNgA9pkzVxX
◈ BNB 0x7cdB1861AC1B4385521a6e16dF198e7bc43fDE5f

📦 Installation

uv pip install staker

From Source

git clone https://github.com/alkalescent/ethereum.git
cd ethereum
make install

📁 Project Structure

src/staker/
├── config.py       # Configuration constants and relay lists
├── environment.py  # Runtime abstraction (AWS vs local)
├── mev.py          # MEV relay selection and health checking
├── node.py         # Main orchestrator — starts/monitors processes
├── snapshot.py     # EBS snapshot management for persistence
└── utils.py        # Utility functions (IP check, log coloring)

✅ Prerequisites

  • uv (Python package manager)
  • Docker
  • AWS CLI (configured with appropriate permissions)
  • Python 3.11+

⚙️ Configuration

Environment Variables

Variable Description Required
DEPLOY_ENV dev (Hoodi testnet) or prod (Mainnet) ✅
ETH_ADDR Fee recipient address ✅
AWS Set to true when running on AWS ❌
DOCKER Set to true when running in container ❌
VPN Set to true to enable VPN ❌

Network Ports

Port Protocol Purpose
30303 TCP/UDP Geth P2P
13000 TCP Prysm P2P
12000 UDP Prysm P2P

🛠️ Development

make install   # Install dependencies
make lint      # Run linting
make format    # Format code
make test      # Run tests
make cov       # Run tests with coverage
make build     # Build Docker image
make run       # Run Docker container
make kill      # Stop container gracefully
make deploy    # Deploy to AWS

⚡ MEV Relays

The node connects to multiple MEV relays for optimal block building:

Mainnet: Flashbots, Ultra Sound, bloXroute, Aestus, Agnostic, Titan, Wenmerge

Hoodi: Flashbots, Aestus, bloXroute, Titan

Relays are automatically tested on startup; unreliable ones are filtered out.

💾 Backup Strategy

  • Snapshots created every 30 days
  • Maximum 3 snapshots retained (90 days)
  • Automatic launch template updates with latest snapshot
  • Graceful shutdown triggers snapshot on instance draining

📊 Version Info

Component Version
Geth 1.16.7
Prysm v7.1.2
MEV-Boost 1.10.1
Base Image Ubuntu 24.04

📄 License

MIT License — see LICENSE for details.

Metadata

Release files for staker 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for staker 0.4.1
File Size Uploaded
staker-0.4.1.tar.gz 140.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for staker 0.4.1
File Interpreter ABI Platform
staker-0.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 159.3 kB

Release files / staker-0.4.1.tar.gz

Download URL staker-0.4.1.tar.gz
Size 140.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0910f0746bfac5a5bacba0f42fcc70459241c14049d6088be0c27537a7443d59
BLAKE2b-256 checksum
How to use checksums
0f4d1f778ea0e3df13380d548e97bf4f078bb1626b35dbcf1ef3e78be4247ca3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 10, 2026.

Transparency log

Release files / staker-0.4.1-py3-none-any.whl

Download URL staker-0.4.1-py3-none-any.whl
Size 19.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
184f7702242104b506e485b8b45d58d1b3586e458d72bd9d75d20af5303591e2
BLAKE2b-256 checksum
How to use checksums
3de73d4e35b75dfa6b8dcd09f8d0c6cdedef39583241edb7eeae644528998147
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.1 This release

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page