112 lines
2.4 KiB
Markdown
112 lines
2.4 KiB
Markdown
# MVP Platform Service
|
|
|
|
## Overview
|
|
|
|
The MVP Platform service is an **integrated service** that provides platform capabilities to the MotoVaultPro application. This service is part of the simplified 6-container architecture.
|
|
|
|
## Architecture
|
|
|
|
The platform service is integrated into the main application stack:
|
|
- **Service Container**: mvp-platform
|
|
- **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 all 6 containers
|
|
```
|
|
|
|
**Service Logs**:
|
|
```bash
|
|
make logs # All service logs
|
|
docker logs mvp-platform
|
|
```
|
|
|
|
**Service Shell Access**:
|
|
```bash
|
|
docker exec -it mvp-platform sh
|
|
```
|
|
|
|
### 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 service deploys with the main application:
|
|
- Same deployment pipeline
|
|
- Shares database and cache
|
|
- Deployed as part of 6-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 container connectivity: `docker exec -it mvp-platform sh`
|
|
|
|
**Database Connection Issues**:
|
|
- Verify mvp-postgres is healthy
|
|
- Check port mappings and network connectivity
|
|
|
|
### Health Checks
|
|
|
|
**Verify Platform Service**:
|
|
```bash
|
|
docker ps | grep mvp-platform
|
|
```
|
|
|
|
### Logs and Debugging
|
|
|
|
**Service Logs**:
|
|
```bash
|
|
docker logs mvp-platform --tail=100 -f
|
|
```
|
|
|
|
**Database Logs**:
|
|
```bash
|
|
docker logs mvp-postgres --tail=100 -f
|
|
```
|