chore: Remove legacy Docker configuration and documentation
Some checks failed
API Gateway (Java Spring Boot) / test (21) (push) Successful in 2m2s
API Gateway (Java Spring Boot) / test (17) (push) Successful in 2m2s
Frontend (React) / test (20) (push) Successful in 2m11s
Integration Tests / integration-tests (push) Failing after 25s
Integration Tests / performance-tests (push) Has been skipped
API Docs (Node.js Express) / test (20) (push) Successful in 2m36s
API Gateway (Java Spring Boot) / build (push) Failing after 40s
Service Adapters (Python FastAPI) / test (3.11) (push) Successful in 1m24s
Service Adapters (Python FastAPI) / test (3.12) (push) Successful in 1m27s
Service Adapters (Python FastAPI) / test (3.13) (push) Successful in 1m27s
Frontend (React) / build (push) Failing after 58s
Service Adapters (Python FastAPI) / build (push) Failing after 21s
Frontend (React) / lighthouse (push) Has been skipped
API Docs (Node.js Express) / build (push) Failing after 1m24s

### Summary of Changes
- Deleted `docker-compose.dev.yml` and `docker-compose.yml` files to streamline the project structure.
- Removed outdated Dockerfiles for services (API Gateway, Service Adapters, API Docs, and Frontend) to eliminate redundancy.
- Updated `env.example` to reflect changes in service configurations, including local host settings for PostgreSQL and Redis.
- Revised `README.md` to remove references to Docker deployment and clarify local development setup instructions.
- Cleaned up documentation structure by removing obsolete files related to Docker rate limits and compatibility fixes.

### Expected Results
- Simplified project setup and improved clarity for developers by focusing on current configurations and removing legacy artifacts.
This commit is contained in:
GSRN
2025-09-18 00:50:03 +02:00
parent 7bb753e293
commit 4b2ef7e246
15 changed files with 45 additions and 901 deletions

View File

@@ -10,7 +10,7 @@ A unified dashboard and integration hub for your homelab services. LabFusion pro
- **Data Correlation**: Cross-service insights and event correlation
- **Customizable Widgets**: Build dashboards with charts, tables, and status cards
- **Polyglot Architecture**: Java Spring Boot API gateway with Python FastAPI adapters
- **Dockerized Deployment**: Easy setup with Docker Compose
- **Multi-Service Architecture**: Modular services with clear separation of concerns
## Architecture
@@ -32,9 +32,12 @@ A unified dashboard and integration hub for your homelab services. LabFusion pro
### Prerequisites
- Docker and Docker Compose
- Java 17+ (for API Gateway)
- Python 3.9+ (for Service Adapters)
- Node.js 18+ (for Frontend and API Docs)
- Git
- Access to container registry (optional, for pre-built images)
- PostgreSQL (for data storage)
- Redis (for message bus)
### Installation
@@ -51,11 +54,6 @@ cp env.example .env
3. Edit `.env` file with your configuration:
```bash
# Docker Registry Configuration (for pre-built images)
DOCKER_REGISTRY=gittea.kammenstraatha.duckdns.org/admin
DOCKER_USERNAME=admin
IMAGE_TAG=main
# Service Integration URLs (update with your actual service URLs and tokens)
HOME_ASSISTANT_URL=http://homeassistant.local:8123
HOME_ASSISTANT_TOKEN=your-ha-token-here
@@ -67,27 +65,23 @@ IMMICH_API_KEY=your-immich-api-key-here
4. Start the services:
```bash
# Using pre-built images from registry (recommended)
docker-compose up -d
# Start API Gateway (Java Spring Boot)
cd services/api-gateway
./mvnw spring-boot:run
# Or for development with local builds
docker-compose -f docker-compose.dev.yml up -d
# Start Service Adapters (Python FastAPI)
cd services/service-adapters
python -m uvicorn main:app --reload --port 8000
# Start Frontend (React)
cd frontend
npm start
# Start API Docs (Node.js Express)
cd services/api-docs
npm start
```
**Docker Compatibility Issues?** If you encounter BuildKit cache errors (common with Docker 27.x), run our compatibility fix:
**Windows:**
```powershell
.\scripts\fix-docker-compatibility.ps1
```
**Linux/macOS:**
```bash
./scripts/fix-docker-compatibility.sh
```
See [Docker Compatibility Guide](docs/DOCKER_COMPATIBILITY.md) for detailed troubleshooting.
5. Access the application:
- Frontend: http://localhost:3000
- API Gateway: http://localhost:8080
@@ -179,32 +173,33 @@ npm start
- **API Gateway**: http://localhost:8080/swagger-ui.html
- **Service Adapters**: http://localhost:8000/docs
## Docker Deployment
## Development
LabFusion supports both pre-built images from container registries and local builds:
### Pre-built Images (Recommended)
### Local Development Setup
```bash
# Configure registry settings in .env
DOCKER_REGISTRY=gittea.kammenstraatha.duckdns.org/admin
DOCKER_USERNAME=admin
IMAGE_TAG=main
# Start PostgreSQL and Redis (using your preferred method)
# Then start each service in separate terminals:
# Deploy with pre-built images
docker-compose up -d
# Terminal 1: API Gateway
cd services/api-gateway
./mvnw spring-boot:run
# Terminal 2: Service Adapters
cd services/service-adapters
python -m uvicorn main:app --reload --port 8000
# Terminal 3: Frontend
cd frontend
npm start
# Terminal 4: API Docs
cd services/api-docs
npm start
```
### Local Development
```bash
# Build and run locally
docker-compose -f docker-compose.dev.yml up -d
```
For detailed deployment instructions, see [Docker Deployment Guide](docs/DOCKER_DEPLOYMENT.md).
## Roadmap
- [x] Basic project structure and Docker setup
- [x] Basic project structure and service setup
- [x] Spring Boot API gateway with authentication
- [x] FastAPI service adapters with modular structure
- [x] React frontend with dashboard