Files
websitedev/DOCKER.md
T
Do Siki b0df8dd182 feat: enhance README and TODO documentation, implement mobile menu functionality in Header component
- Updated README.md with project details, quick start instructions, and tech stack.
- Expanded TODO.md to reflect current project status and backlog items, including Linear ticket synchronization.
- Added mobile menu toggle functionality in Header component with corresponding tests for user interactions.
- Configured Next.js for Docker deployment and optimized build settings.
2025-09-05 17:28:52 +02:00

3.2 KiB

🐳 Docker Fejlesztői Környezet

Gyors Indítás

Előfeltételek

  • Docker és Docker Compose telepítve
  • Git repository klónozva

Teljes Stack Indítása

# Projekt gyökerében
docker-compose -f docker-compose.dev.yml up --build

# Vagy a proto könyvtárból
cd proto && npm run docker:dev

🚀 Szolgáltatások

A Docker stack a következő szolgáltatásokat indítja:

Szolgáltatás Port URL Leírás
Next.js App 3000 http://localhost:3000 Fő alkalmazás
MongoDB 27017 mongodb://localhost:27017 Adatbázis
Mongo Express 8081 http://localhost:8081 MongoDB Web UI
Loki 3100 http://localhost:3100 Log aggregátor
Grafana 3001 http://localhost:3001 Monitoring dashboard

🔐 Alapértelmezett Bejelentkezési Adatok

MongoDB:

  • Username: admin
  • Password: password123

Grafana:

  • Username: admin
  • Password: admin123

📊 MongoDB Hozzáférés

1. Mongo Express Web UI

2. MongoDB Shell (ha telepítve van)

# Kapcsolódás a containerhez
docker exec -it mozdit-mongodb-dev mongosh

# Vagy közvetlenül
mongosh "mongodb://admin:password123@localhost:27017/mozdit"

3. Alkalmazásból

Az alkalmazás automatikusan csatlakozik:

MONGODB_URI=mongodb://mongodb:27017/mozdit

🛠️ Fejlesztési Parancsok

# Stack indítása (build-del)
npm run docker:dev

# Stack leállítása
npm run docker:dev:down

# Alkalmazás logok követése
npm run docker:dev:logs

# Egyedi Docker build
npm run docker:build

# Standalone container futtatása
npm run docker:run

📁 Adatok Perzisztencia

A következő Docker volume-ok tárolják az adatokat:

  • mongodb_data - MongoDB adatok
  • loki_data - Log adatok
  • grafana_data - Grafana beállítások

Adatok törlése:

docker-compose -f docker-compose.dev.yml down -v

🔄 Hot Reload

A fejlesztői környezet támogatja a hot reload-ot:

  • Kód változások automatikusan frissülnek
  • MongoDB adatok megmaradnak restart után
  • Volume mounting biztosítja a gyors fejlesztést

🚨 Hibaelhárítás

Port foglaltság

Ha a 3000-es port foglalt:

# Meglévő process keresése
lsof -i :3000

# Vagy másik port használata
docker-compose -f docker-compose.dev.yml up --build -p 3002:3000

MongoDB kapcsolat hiba

# Container logok ellenőrzése
docker logs mozdit-mongodb-dev

# Újraindítás
docker-compose -f docker-compose.dev.yml restart mongodb

Teljes tisztítás

# Minden container és volume törlése
docker-compose -f docker-compose.dev.yml down -v --remove-orphans
docker system prune -a

🏗️ Production Build

# Production image build
docker build -t mozdit-app:latest ./proto

# Production futtatás
docker run -p 3000:3000 \
  -e NODE_ENV=production \
  -e MONGODB_URI=mongodb://your-prod-db:27017/mozdit \
  mozdit-app:latest

📝 Megjegyzések

  • A fejlesztői környezet nem production-ready
  • Alapértelmezett jelszavak csak fejlesztésre
  • SSL/TLS nincs konfigurálva
  • Biztonsági headers minimálisak