111 lines
2.4 KiB
Markdown
111 lines
2.4 KiB
Markdown
# MVP Platform Module
|
|
|
|
## Overview
|
|
|
|
The MVP Platform module is fully integrated inside the MotoVaultPro backend container. It delivers all platform capabilities without requiring a separate service or container in the simplified five-container stack.
|
|
|
|
## Architecture
|
|
|
|
The platform module runs as part of the backend service:
|
|
- **Runtime**: `mvp-backend` container (Fastify API)
|
|
- **Shared Database**: Uses mvp-postgres
|
|
- **Shared Cache**: Uses mvp-redis
|
|
|
|
## Platform Capabilities
|
|
|
|
### Vehicle Data Service
|
|
|
|
The platform provides vehicle data capabilities including:
|
|
- Vehicle makes, models, trims
|
|
- Engine and transmission data
|
|
- VIN decoding
|
|
- Year-based vehicle information
|
|
|
|
**Data Source**: Vehicle data from standardized sources
|
|
**Cache Strategy**: Year-based hierarchical caching using mvp-redis
|
|
|
|
## Service Communication
|
|
|
|
### Application → Platform Communication
|
|
- **Protocol**: Internal service calls within the application
|
|
- **Database**: Shared mvp-postgres database
|
|
- **Cache**: Shared mvp-redis cache
|
|
|
|
## Development Workflow
|
|
|
|
### Local Development
|
|
|
|
**Start All Services**:
|
|
```bash
|
|
make start # Starts the five-container stack
|
|
```
|
|
|
|
**Backend Logs (includes platform module)**:
|
|
```bash
|
|
make logs-backend
|
|
```
|
|
|
|
**Backend Shell (platform code lives here)**:
|
|
```bash
|
|
make shell-backend
|
|
```
|
|
|
|
### Database Management
|
|
|
|
**Shared Database**:
|
|
- **PostgreSQL** (port 5432): mvp-postgres
|
|
- **Redis** (port 6379): mvp-redis
|
|
|
|
**Database Access**:
|
|
```bash
|
|
# PostgreSQL
|
|
make db-shell-app
|
|
```
|
|
|
|
## Deployment Strategy
|
|
|
|
### Integrated Deployment
|
|
The platform module deploys with the main application:
|
|
- Same deployment pipeline
|
|
- Shares database and cache
|
|
- Deployed as part of the five-container stack
|
|
|
|
## Integration Patterns
|
|
|
|
### Data Access
|
|
Application features access platform data through shared database:
|
|
- Direct database queries
|
|
- Shared cache for performance
|
|
- Single transaction context
|
|
|
|
## Troubleshooting
|
|
|
|
### Common Issues
|
|
|
|
**Service Discovery Problems**:
|
|
- Verify Docker networking: `docker network ls`
|
|
- Check backend container connectivity: `docker compose exec mvp-backend sh`
|
|
|
|
**Database Connection Issues**:
|
|
- Verify mvp-postgres is healthy
|
|
- Check port mappings and network connectivity
|
|
|
|
### Health Checks
|
|
|
|
**Verify Backend Service (contains platform module)**:
|
|
```bash
|
|
docker compose ps mvp-backend
|
|
```
|
|
|
|
### Logs and Debugging
|
|
|
|
**Service Logs**:
|
|
```bash
|
|
docker compose logs -f mvp-backend
|
|
```
|
|
|
|
**Database Logs**:
|
|
```bash
|
|
docker compose logs -f mvp-postgres
|
|
```
|