Ana içeriğe geç

Kurulum

Kurulum tek komuttur. npm install, npm run build, docker compose build, .env kopyalama veya klasör oluşturma gibi elle adımlar gerekmez — hepsini kurulum betiği yapar.

Betik şunları yürütür: işletim sistemi ve bağımlılık tespiti → çalışma dizinleri → .env üretimi (secret'lar rastgele üretilir) → imaj derleme → servisleri bağımlılık sırasıyla başlatma → gerçek healthcheck doğrulaması.

Docker – Linux

git clone https://github.com/iqvizyon-development/flex-erp.git ERP
cd ERP
chmod +x install.sh
./install.sh

Docker – Windows

git clone https://github.com/iqvizyon-development/flex-erp.git ERP
cd ERP
powershell -ExecutionPolicy Bypass -File .\install.ps1

Docker Desktop'ın açılması bekleniyorsa betik kontrollü şekilde bekler.

Native (Docker'sız) kurulum

./install.sh --mode native

Servisler systemd ile kaydedilir (iqvflex-backend, iqvflex-frontend) ve makine yeniden başladığında otomatik açılır. Servis kaydı sudo gerektirir.

powershell -ExecutionPolicy Bypass -File .\install.ps1 -Mode native

Servisler yerleşik Zamanlanmış Görev (Scheduled Task) olarak kaydedilir; ek bağımlılık (PM2, NSSM) gerekmez. Yönetici yetkisi ister.

Kurulum kipleri

Kip Linux Windows
Otomatik (Docker varsa Docker) ./install.sh .\install.ps1
Docker ./install.sh --mode docker .\install.ps1 -Mode docker
Native ./install.sh --mode native .\install.ps1 -Mode native
Sıkılaştırılmış üretim ./install.sh --profile prod .\install.ps1 -DeployProfile prod

--profile prod (docker-compose.prod.yml) veritabanı ve backend portlarını dışarıya hiç açmaz, backend kök dosya sistemini salt okunur yapar ve bellek sınırları uygular. Tek giriş noktası nginx olur.

Kurulum sonunda erişim adresi: http://localhost:8080

Güncelleme

./update.sh          # Linux
.\update.ps1          # Windows

Sıra: kurulum doğrulama → sürüm kaydı → yapılandırma yedeği → git fetch → git pull --ff-only → sürüm/bağımlılık karşılaştırması → gerekli servisleri yeniden derleme → yeniden başlatma → healthcheck.

  • Takip edilen dosyalarda kaydedilmemiş değişiklik varsa güncelleme durur.
  • Yalnızca git pull --ff-only kullanılır — birleştirme/rebase yapılmaz.
  • docker compose down -v hiçbir zaman çalıştırılmaz → veritabanı korunur.

Kaldırma

./uninstall.sh          # Linux
.\uninstall.ps1         # Windows

Servisleri durdurur, container'ları kaldırır, uygulama imajlarını siler. Korur: MongoDB verisi, .env, backups/, kaynak kod.

Tam temizlik için --purge (ve veritabanı dahil silmek için ayrıca --purge-data) bayrakları kullanılabilir; ayrıntılar için depo kökündeki README.md dosyasına bakın.

Geliştirici kurulumu

Üretim kullanıcısının bu bölüme ihtiyacı yoktur; aşağıdaki komutlar yalnızca geliştirme için gereklidir.

# Frontend
cd dashboard
npm ci
npm run dev            # geliştirme sunucusu (http://localhost:5173)
npm run typecheck      # tsc --noEmit
npm run lint
npm test               # node:test
npm run build

# Backend
cd iqvflex/backend
npm ci
cp .env.example .env   # değerleri kendi ortamınıza göre düzenleyin
npm run dev            # node --watch (http://localhost:3001)
npm test               # node:test + smoke