Infrastructure Overview
This document outlines the local and deployment infrastructure for the project.
π Setup Instructions
- Clone the repository and navigate to the project root.
- Copy
.env.exampleto.envand update environment variables as needed. - Run
docker-compose up --buildto start backend, database, and frontend containers. - Access local monitoring dashboards (Prometheus, Grafana, Loki) at the provided ports.
- Use scripts in
/infra/scriptsfor setup, testing, and deployment automation.
πΊοΈ Architecture Diagram
π οΈ Local Development
- Use Docker Compose to run backend, database, and (optionally) frontend.
- Environment variables stored in
.envfiles. - Scripts in
/infra/scriptsfor setup, testing, and deployment. - Example local monitoring: Prometheus, Grafana, Loki.
- For detailed on-premises development options, see On-Premises Development.
π’ Deployment
- Containerized deployment using Docker images.
- Future: Kubernetes manifests for scaling.
- Deployment pipeline: GitHub Actions for CI/CD (build, test, deploy).
- Monitoring/alerting: Prometheus, Grafana, and alertmanager.
π€ Automation
- Use Makefile for common tasks (dev, test, lint, build).
- GitHub Actions or similar for CI/CD.
- Cost management: Monitor resource usage and optimize Docker images.
π§© Troubleshooting
- Ensure Docker and Docker Compose are installed and running.
- Check
.envconfiguration for missing or incorrect values. - Use
docker-compose logsto view service logs. - For monitoring issues, verify Prometheus and Grafana containers are healthy.
- See scripts-readme.md for automation script usage.
Update as your infra grows. Reference the documentation standards for best practices.