Prepare application for production deployment with Docker and PostgreSQL support

Update README and replit.md to include comprehensive Docker deployment instructions, environment variable configurations, and database management details.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ceced2fc-aa46-458d-ba87-ddd4b7bb1518
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/659922a9-0087-461c-90dd-6d9a58b81d4d/ceced2fc-aa46-458d-ba87-ddd4b7bb1518/ahHWEFX
This commit is contained in:
paul-nothaft
2025-10-23 13:32:11 +00:00
parent 784968521a
commit 32e5fbe6ac
2 changed files with 192 additions and 0 deletions
+21
View File
@@ -60,6 +60,27 @@ Preferred communication style: Simple, everyday language.
**Priority and Status Management**: Tasks support priority levels (low, medium, high) and status tracking (todo, in progress, done) with visual indicators.
## Production Deployment
**Docker Stack Support**: The application is production-ready with full Docker support for containerized deployment:
- **Multi-stage Docker Build**: Optimized production image with separate build and runtime stages
- **PostgreSQL Database**: Separate database container with persistent volume storage
- **Health Monitoring**: Built-in health checks for both application and database services
- **Environment Configuration**: Flexible configuration via environment variables
- **Graceful Shutdown**: Proper cleanup and connection pool management
- **Database Migrations**: Automatic schema creation and seeding on first startup
**Storage Flexibility**:
- **Development**: Uses in-memory storage (MemStorage) for rapid prototyping
- **Production**: Switches to PostgreSQL-backed storage (DbStorage) using Drizzle ORM
- **Environment-driven**: Automatically selects storage based on NODE_ENV or USE_DB flag
**Database Management**:
- **Connection Pooling**: Uses node-postgres (pg) for efficient connection management
- **Auto-migrations**: Enables pgcrypto extension and creates tables on startup
- **Default Data**: Seeds default labels automatically on fresh database
- **Graceful Cleanup**: Properly closes connections on shutdown signals
## External Dependencies
### UI and Styling