The Mina network performance testing tools
git submodule sync && git submodule update --recursive --init
https://hub.docker.com/r/o1labs/mina-perf-testing/tags
cd orchestrator
docker build -t mina-perf-testing-orchestrator .
docker tag mina-perf-testing-orchestrator o1labs/mina-perf-testing:orchestrator
docker push o1labs/mina-perf-testing:orchestrator
- ./internal-trace-consumer
- Git submodule.
cd internal-trace-consumer
docker build -t mina-internal-trace-consumer .
docker tag mina-internal-trace-consumer o1labs/mina-perf-testing:internal-trace-consumer
docker push o1labs/mina-perf-testing:internal-trace-consumer
- ./fetcher-infra-tmp
- Temporary solution before it will be merged with the standard K8S deployment.
The dashboard for the target network monitoring and performance analysis.
- ./mina-frontend
- Git submodule.
cd mina-frontend
docker build \
--build-arg FETCHER_HOST="http://localhost" \
--build-arg FETCHER_PORT="4000" \
--build-arg APP_CONFIG="fetcher" \
-t mina-frontend-<ENV_NAME> .
docker tag mina-frontend-<ENV_NAME> o1labs/mina-perf-testing:dashboard-<ENV_NAME>
docker push o1labs/mina-perf-testing:dashboard-<ENV_NAME>
Where <ENV_NAME>
is the environment name the dashboard was built for (considering the Docker image build arguments passed).
This is required because the dashboard building procedure results in 100% client-side application, which is not aware of the environment it is running in.
Also please make sure that the FETCHER_HOST
and FETCHER_PORT
are publicly available (same reason as it was described above, the client-side application).
cd uptime-backend
make clean build
# Or
make clean docker-publish
Please make sure to also provide the corresponding application configuration file and environment variables during the container start-up.
Example configuration file:
{
"in_memory": true,
"whitelist": [
"B62qkasW9RRENzCzdEov1PRQ63BUT2VQK9iU7imcvbPLThnhL2eYMz8",
"B62qp3x5osG6Fz6j44FVn61E4DNpAnyDEMcoQdNQZAdhaR7sj4wZ6gW",
"B62qii4xfjQ3Vg5dsq7RakYTENQkdD8pFPMgqtUdC9FhgvBbwEbRoML"
]
}
Example container start-up command:
docker run \
-id \
-p 8080:8080 \
-v ./config.json:/app/config.json \
-e CONFIG_FILE="/app/config.json" \
-e NETWORK="testnet" \
o1labs/mina-perf-testing:in-memory-uptime-backend
Reported network participants then can be found at http://localhost:8080/v1/online.