Environment Setup
Overview
This document describes the required environment variables, software dependencies, and configurations required to run the RentOne platform.
Software Requirements
| Component | Version |
|---|---|
| Ubuntu | 24.04 LTS |
| Java | 21 |
| Maven | 3.9+ |
| MongoDB | 7.0+ |
| Redis | 7+ |
| Nginx | Latest Stable |
| Node.js | 20+ |
| Jenkins | Latest Stable |
Required Services
The following services must be running before starting the platform:
MongoDB
Redis
Nginx
Service Registry
API Gateway
Backend Services
Tenant Configuration
The platform is multi-tenant.
Required Request Header:
X-Tenant-Header
Supported Tenants:
| Tenant | Purpose |
|---|---|
| RENTONE | Production |
| DEVMINDS | Testing |
Common Application Properties
Example:
spring.application.name=service-name
server.port=6000
eureka.client.service-url.defaultZone=http://localhost:6001/eureka/
eureka.instance.prefer-ip-address=true
MongoDB Configuration
Example:
spring.data.mongodb.uri=mongodb://localhost:27017
Production Version:
MongoDB 7.0.31
Redis Configuration
Example:
spring.data.redis.host=localhost
spring.data.redis.port=6379
Used For:
- Gateway Rate Limiting
- Temporary Caching
JWT Configuration
Example:
jwt.secret=<secret-key>
jwt.expiration=2592000000
Current Expiry Policy:
| Client | Expiry |
|---|---|
| Mobile App | 30 Days |
| Web App | 30 Days |
| Admin Panel | 24 Hours |
Google Maps Configuration
Required:
google.maps.api.key=<google-api-key>
Used For:
- Places Search
- Address Lookup
- Delivery Zones
- Geocoding
Firebase Configuration
Required:
firebase.config.path=/path/firebase-service-account.json
Used For:
- Push Notifications
- Device Token Management
MSG91 Configuration
Required:
msg91.auth.key=<auth-key>
msg91.sender.id=<sender-id>
msg91.template.id=<template-id>
Used For:
- OTP Delivery
- Transactional SMS
Payment Gateway Configuration
Required:
payment.gateway.key=<key>
payment.gateway.secret=<secret>
Used For:
- Order Payments
- Subscription Payments
- Callback Verification
File Management Configuration
CDN Domain:
https://cdn.rentone.co.in
Storage Location:
/var/www/rentone/files
Environment Variables Checklist
Before deployment verify:
✓ MongoDB URI
✓ Redis Configuration
✓ Eureka URL
✓ JWT Secret
✓ Google Maps API Key
✓ Firebase Service Account
✓ MSG91 Credentials
✓ Payment Gateway Credentials
✓ File Storage Location
✓ Tenant Configuration
Verification
Verify Services:
sudo systemctl status mongod
sudo systemctl status nginx
sudo systemctl status redis-server
Verify Eureka:
http://localhost:6001/eureka
Verify Gateway:
https://cloud.rentone.co.in