Files
ColaFlow/DOCKER-QUICKSTART.md
Yaojia Wang 08b317e789
Some checks failed
Code Coverage / Generate Coverage Report (push) Has been cancelled
Tests / Run Tests (9.0.x) (push) Has been cancelled
Tests / Docker Build Test (push) Has been cancelled
Tests / Test Summary (push) Has been cancelled
Add trace files.
2025-11-04 23:28:56 +01:00

3.2 KiB

ColaFlow Docker Quick Start

Quick guide to start ColaFlow backend for frontend development.

Prerequisites

  • Docker Desktop installed and running
  • Git (optional, for version control)

Quick Start (30 seconds)

Windows (PowerShell)

# Clone repo (if not already)
git clone <repo-url>
cd product-master

# Start all services
.\scripts\dev-start.ps1

Linux/Mac (Bash)

# Clone repo (if not already)
git clone <repo-url>
cd product-master

# Start all services
chmod +x scripts/dev-start.sh
./scripts/dev-start.sh

Using npm (from frontend directory)

cd colaflow-web
npm run docker:dev

Access Points

After startup (30-60 seconds), access:

Service URL Credentials
Frontend http://localhost:3000 -
Backend API http://localhost:5000 -
Swagger Docs http://localhost:5000/swagger -
Demo Login - owner@demo.com / Admin123!

Common Commands

# View logs
docker-compose logs -f

# Stop all services
docker-compose down

# Restart backend only
docker-compose restart backend

# Reset all data (WARNING: deletes everything)
.\scripts\dev-start.ps1 -Reset

# Start with dev tools (pgAdmin, Redis Commander)
.\scripts\dev-start.ps1 -Tools

Dev Tools (Optional)

Start with -Tools flag to access:

Tool URL Credentials
pgAdmin http://localhost:5050 admin@colaflow.com / admin
Redis Commander http://localhost:8081 -

Troubleshooting

Services won't start

# Check Docker is running
docker info

# View detailed logs
docker-compose logs backend
docker-compose logs postgres

Port conflicts

Edit .env file to change ports:

BACKEND_PORT=5001
FRONTEND_PORT=3001
POSTGRES_PORT=5433

Fresh start

# Remove all containers and data
docker-compose down -v

# Rebuild and restart
.\scripts\dev-start.ps1 -Clean

Frontend Development

Connect to containerized backend

Create colaflow-web/.env.local:

NEXT_PUBLIC_API_URL=http://localhost:5000
NEXT_PUBLIC_WS_URL=ws://localhost:5000/hubs/project
cd colaflow-web
npm install
npm run dev

Frontend will run on http://localhost:3000 and connect to containerized backend.

What's Included?

The Docker environment provides:

  • PostgreSQL 16 database
  • Redis 7 cache
  • .NET 9 backend API
  • Next.js 15 frontend
  • Demo tenant with sample data
  • SignalR real-time updates

Sample Data

Default demo account:

  • Email: owner@demo.com
  • Password: Admin123!
  • Role: Tenant Owner (full access)

Includes:

  • 1 demo project
  • 1 epic
  • 1 story
  • 3 tasks

Next Steps

  1. Start backend: .\scripts\dev-start.ps1
  2. Start frontend: cd colaflow-web && npm run dev
  3. Open browser: http://localhost:3000
  4. Login with demo account
  5. Start developing!

Need Help?

  • Full documentation: docs/DOCKER-DEVELOPMENT-ENVIRONMENT.md
  • Report issues: [GitHub Issues]
  • Ask in Slack: #colaflow-dev

Quick Reference:

# Start
.\scripts\dev-start.ps1

# Stop
docker-compose down

# Logs
docker-compose logs -f

# Reset
.\scripts\dev-start.ps1 -Reset