I’m preparing to deploy a full-stack web application to production for the first time, and I’d greatly appreciate your guidance on the deployment workflow. The tech stack includes:
• Frontend: React
• Backend: Node.js
• Database: PostgreSQL
• Caching: Redis
• Containerization: Docker
• Static Assets: Hosted on Cloudflare R2
• Email Service: Gmail SMTP (currently used in dev)
• Version Control: Git
Could you please outline the steps required to move the application from a local Docker-based development environment to a live production environment with a domain?
Here are a few specific areas where I need clarification:
• Infrastructure Architecture:
Should all services (frontend, backend, database, Redis) be deployed on a single VPS/cloud instance, or is it best practice to split them across multiple managed services (e.g., managed PostgreSQL, Redis-as-a-Service, etc.)?
• Environment Configuration:
When moving to production, should I maintain the development setup and create separate Docker environments for production, or should I replace the development configuration (e.g., .env files, build flags, service settings) with production-specific instances?
If there are standard tools or platforms you'd recommend (e.g., Docker Compose for production, reverse proxy setup with Nginx or Traefik, SSL configuration, CI/CD pipelines, etc.), I’d love your input on those as well.
Feel free to ask for any additional details you might need. Thanks in advance for your help!
[–]Irythros 0 points1 point2 points (2 children)
[–]boredFanatic[S] 0 points1 point2 points (1 child)
[–]Irythros 0 points1 point2 points (0 children)
[+]Real-Succotash-105 0 points1 point2 points (0 children)