2026-04-27 18:09:30 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-25 08:42:48 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00
2025-01-17 21:38:08 +03:00

Truncgil Finance Application

Bu proje, Truncgil bünyesinde geliştirilen Docker tabanlı bir Laravel finans uygulamasıdır. Proje; PHP 8.2-FPM, Nginx ve MySQL 8.0 servislerini içermektedir.

🚀 Hızlı Başlangıç (Kurulum)

Projeyi yerel ortamınızda veya sunucunuzda çalıştırmak için aşağıdaki adımları izleyin:

1. Depoyu Klonlayın

git clone https://git.truncgil.com/truncgit/finance.git
cd finance

2. Yapılandırma Dosyasını Hazırlayın

.env.example dosyasını .env olarak kopyalayın ve gerekli düzenlemeleri yapın:

cp .env.example .env

Önemli: Docker içerisinde çalışırken DB_HOST=db ve DB_PORT=3306 (docker iç ağı için) olarak ayarlanmalıdır. Dışarıdan erişim için Docker 3308 portunu kullanmaktadır.

3. Servisleri Başlatın

Proje içerisinde bulunan restart.sh betiği, port çakışmalarını kontrol eder, eski konteynerleri temizler ve sistemi Docker Compose ile ayağa kaldırır:

chmod +x restart.sh
./restart.sh

4. Uygulamaya Erişin

Servisler başarıyla başlatıldıktan sonra tarayıcınızdan şu adrese gidebilirsiniz:


🛠️ Nasıl Çalışır? (Mimari)

Proje, modern konteynerleştirme standartlarına uygun olarak tasarlanmıştır:

Servis Yapısı

  • app: PHP 8.2-FPM üzerinde koşan Laravel uygulamasıdır. dockerfile içerisinde gerekli PHP eklentileri (pdo_mysql, bcmath, gd vb.) ve otomatik görevler (cron) yapılandırılmıştır.
  • web: Nginx (alpine) sunucusudur. Gelen istekleri karşılar ve PHP servisine yönlendirir.
  • db: MySQL 8.0 veritabanıdır. Veriler db_data volume'ü içerisinde kalıcı olarak saklanır.

Otomatik Görevler (Cron)

dockerfile içerisinde tanımlanan cron yapısı ile Laravel'in artisan run-all-fetchs komutu her dakika otomatik olarak çalıştırılır. Bu, finansal verilerin güncel tutulmasını sağlar.

API Dokümantasyonu

Proje içerisinde Scribe kullanılmaktadır. dockerfile build aşamasında API dokümantasyonu otomatik olarak üretilir.


💻 Faydalı Komutlar

Aşağıdaki komutları konteyner içerisinde çalıştırmak için docker exec kullanabilirsiniz:

Migrasyonları Çalıştır:

docker exec -it truncgil-finance-app php artisan migrate

Verileri Seed Et:

docker exec -it truncgil-finance-app php artisan db:seed

Logları Takip Et:

docker compose -p finance logs -f

📝 Notlar

  • Uygulama anahtarı (APP_KEY) ilk build sırasında otomatik olarak üretilir.
  • Port veya servis isimlerini değiştirmek isterseniz docker-compose.yml ve restart.sh dosyalarını güncelleyebilirsiniz.
S
Description
No description provided
Readme 496 KiB
Languages
PHP 81.4%
Blade 16.9%
Shell 0.9%
JavaScript 0.8%