Practical overview
When it fits
Use Armiarma when you need to collect your own peer-to-peer network observations from an Ethereum consensus-layer network and can manage the crawler's storage and deployment.
Who it is for
- Ethereum protocol researchers studying peer discovery and connectivity.
- Infrastructure teams collecting observations about consensus-layer network behavior.
- Developers who can operate a self-hosted crawler and its database or Docker Compose stack.
Documented uses
- Crawl a selected Ethereum consensus-layer network or fork using its fork digest.
- Gather peer and network-status observations for research and analysis.
- Store crawl data in PostgreSQL and monitor crawler metrics with the documented Prometheus and Grafana setup.
- Back up peer IDs at an interval to support reconstruction of previously crawled network states.
Requirements & limits
The repository is public and identifies the project as MIT-licensed open-source software. The documented deployment options are source compilation or Docker Compose.
- The README identifies Ethereum consensus-layer networks as the supported protocol focus and describes fork selection through a fork digest.
- A source build requires Git, GCC, Go 1.17 and PostgreSQL; the README warns that newer Go versions may fail to compile.
- The documented Docker Compose stack brings together Armiarma, PostgreSQL, Prometheus and Grafana.
- The remote consensus-layer client endpoint is labeled experimental.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Build Armiarma from source
Compile the crawler binary from the repository.
Before you start
- Git
- GCC C compiler
- Go 1.17 available from the terminal
- PostgreSQL database
Steps
Clone the Armiarma repository and change into its directory.
Run the command below.
make dependenciesRun the command below to generate the binary.
make build
Expected outcome
The documented build produces `./build/armiarma`, which the README identifies as the crawler executable.
Guide limitations
- The README warns that Go versions above 1.17 may fail to compile; lower versions can report an
io/fsdependency import error. - These steps cover compilation; crawler execution also requires suitable configuration and a supported Ethereum consensus-layer network.
Prepare the Docker Compose configuration
Set up the repository's configuration file for its documented Compose-based crawler stack.
Before you start
- Docker and Docker Compose
- A copy of the Armiarma repository
Steps
Copy
.env_templateto a new environment file.Edit the copied file to configure the deployment.
Review
docker-compose.yamland the environment file for settings to customize before launch.
Expected outcome
A customized environment file is prepared for the README's Docker Compose deployment instructions.
Guide limitations
- This guide covers configuration preparation, not running or verifying a deployment.
- The README notes that Docker permissions or data-directory permissions may require attention on some systems.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- migalabs/armiarma · Official homepage title · retained in its source language

