Skip to content

Repository files navigation

Federated Learning Viz

Web application for managing and visualizing Federated Learning experiments.

Local Architecture

In this setup, Akoflow is a required part of the local environment for AWS provisioning and execution monitoring.

Prerequisites

  • Docker Desktop (or Docker Engine) running
  • Docker Compose v2 (docker compose)
  • Git

Environment Configuration

Use a single environment file at the project root:

  1. Copy the example file:
cp .env.example .env

In PowerShell:

Copy-Item .env.example .env
  1. Update AWS and S3 values in the .env file:
  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • AWS_REGION
  • AWS_VPC_ID
  • AWS_SUBNET_ID
  • AWS_AMI_ID
  • AWS_SSH_KEY_NAME
  • S3_FOLDER_KEY

Note: the startup scripts automatically create and set NVFLARE_WS_HOST_PATH to an absolute path that points to akoflow-aws-fedlearning-deployment/.nvflare_ws_shared.

Relevant default values:

  • AKOFLOW_EXECUTE_REAL=true
  • ENABLE_AWS_EXECUTION=true
  • EXPERIMENT_AUTO_FINALIZE_DRY_RUN=false

Starting the Environment

Windows (PowerShell)

./scripts/start-dev.ps1

Foreground mode:

./scripts/start-dev.ps1 -Foreground

Linux/macOS (bash)

bash ./scripts/start-dev.sh

Foreground mode:

bash ./scripts/start-dev.sh --foreground

Manual (without script)

docker compose up -d --build

Stopping the Environment

docker compose down

To remove volumes (warning: this deletes local PostgreSQL data):

docker compose down -v

Quick Verification

curl http://localhost:3001/api/config/algorithms
curl http://localhost:8001/health
curl http://localhost:8000/health

Troubleshooting

Docker does not start

Check whether the daemon is running:

docker info

Port conflict

Used ports: 8080, 3001, 8001, 5432, 8000.

Windows:

netstat -ano | findstr :3001

Linux/macOS:

lsof -i :3001

Backend cannot connect to database

docker compose ps
docker compose logs -f backend postgres

Frontend opens, but API fails

docker compose ps backend
docker compose logs -f frontend backend

Main Structure

  • backend/: Node.js API and provenance services
  • src/: Vue.js frontend
  • akoflow-aws-fedlearning-deployment/: Akoflow service
  • docker-compose.yml: local orchestration
  • scripts/start-dev.ps1 and scripts/start-dev.sh: development bootstrap

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages