# 🐳 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 ```bash # 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** | 8080 | http://localhost:8080 | FƑ alkalmazĂĄs | | **MongoDB** | 27018 | mongodb://localhost:27018 | 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 - URL: http://localhost:8081 - BöngĂ©szƑben egyszerƱen elĂ©rhetƑ - AdatbĂĄzis: `mozdit` ### 2. MongoDB Shell (ha telepĂ­tve van) ```bash # 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 ```bash # 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: ```bash 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: ```bash # 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 ```bash # 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 ```bash # Minden container Ă©s volume törlĂ©se docker-compose -f docker-compose.dev.yml down -v --remove-orphans docker system prune -a ``` ## đŸ—ïž Production Build ```bash # 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