Cloud-native microservices banking platform self-hosted on Raspberry Pi with enterprise-grade security
CNB - Bank is a full-stack, cloud-native banking and investment platform built to demonstrate real-world microservices architecture, infrastructure-as-code, and layered security design. The entire backend runs on a self-managed Kubernetes cluster provisioned on Raspberry Pi hardware, exposed to the public internet through a Cloudflare Tunnel — eliminating the need for a static IP or open firewall ports while maintaining a production-grade access pattern.
The platform is composed of two independently deployable microservices: a core banking system handling accounts, transactions, and balances, and a live market data trading platform for equity lookups and simulated trades. Both services share a unified React frontend and are protected by AWS Cognito for user authentication and AWS WAF for request filtering at the API Gateway layer.
All infrastructure is defined in Terraform, making every component — from VPC rules to Kubernetes manifests — reproducible and version-controlled. A CI/CD pipeline automates container builds and rolling deployments so that code changes flow from commit to running pod with minimal manual intervention. IAM policies follow least-privilege principles throughout, ensuring each service only holds the permissions it requires.
Handles user accounts, balance management, deposits, withdrawals, and transaction history. Backed by a self-hosted MySQL database running inside the Kubernetes cluster.
Connects to live market data APIs to display equity prices and execute simulated trades. Independently deployable with its own data store and API surface.
AWS WAF filters malicious requests at the API Gateway edge. Cognito handles authentication and token issuance. All internal service-to-service calls are scoped by IAM roles.
Automated container builds trigger on code push, push images to a registry, and apply rolling Kubernetes deployments — enabling zero-downtime updates to both services.
Architecture diagram / screenshot coming soon
This project is currently private. Repository link will be added when available.
Repository Coming Soon