diff --git a/README.md b/README.md index 1a4c26b..c649b95 100644 --- a/README.md +++ b/README.md @@ -1,66 +1,76 @@ -
+# 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. -## About Laravel +## 🚀 Hızlı Başlangıç (Kurulum) -Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as: +Projeyi yerel ortamınızda veya sunucunuzda çalıştırmak için aşağıdaki adımları izleyin: -- [Simple, fast routing engine](https://laravel.com/docs/routing). -- [Powerful dependency injection container](https://laravel.com/docs/container). -- Multiple back-ends for [session](https://laravel.com/docs/session) and [cache](https://laravel.com/docs/cache) storage. -- Expressive, intuitive [database ORM](https://laravel.com/docs/eloquent). -- Database agnostic [schema migrations](https://laravel.com/docs/migrations). -- [Robust background job processing](https://laravel.com/docs/queues). -- [Real-time event broadcasting](https://laravel.com/docs/broadcasting). +### 1. Depoyu Klonlayın +```bash +git clone https://git.truncgil.com/truncgit/finance.git +cd finance +``` -Laravel is accessible, powerful, and provides tools required for large, robust applications. +### 2. Yapılandırma Dosyasını Hazırlayın +`.env.example` dosyasını `.env` olarak kopyalayın ve gerekli düzenlemeleri yapın: +```bash +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. -## Learning Laravel +### 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: +```bash +chmod +x restart.sh +./restart.sh +``` -Laravel has the most extensive and thorough [documentation](https://laravel.com/docs) and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework. +### 4. Uygulamaya Erişin +Servisler başarıyla başlatıldıktan sonra tarayıcınızdan şu adrese gidebilirsiniz: +- **Uygulama:** [http://localhost:8089](http://localhost:8089) +- **Veritabanı (Dış Erişim):** localhost:3308 -You may also try the [Laravel Bootcamp](https://bootcamp.laravel.com), where you will be guided through building a modern Laravel application from scratch. +--- -If you don't feel like reading, [Laracasts](https://laracasts.com) can help. Laracasts contains thousands of video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library. +## 🛠️ Nasıl Çalışır? (Mimari) -## Laravel Sponsors +Proje, modern konteynerleştirme standartlarına uygun olarak tasarlanmıştır: -We would like to extend our thanks to the following sponsors for funding Laravel development. If you are interested in becoming a sponsor, please visit the [Laravel Partners program](https://partners.laravel.com). +### 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. -### Premium Partners +### 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. -- **[Vehikl](https://vehikl.com/)** -- **[Tighten Co.](https://tighten.co)** -- **[WebReinvent](https://webreinvent.com/)** -- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)** -- **[64 Robots](https://64robots.com)** -- **[Curotec](https://www.curotec.com/services/technologies/laravel/)** -- **[Cyber-Duck](https://cyber-duck.co.uk)** -- **[DevSquad](https://devsquad.com/hire-laravel-developers)** -- **[Jump24](https://jump24.co.uk)** -- **[Redberry](https://redberry.international/laravel/)** -- **[Active Logic](https://activelogic.com)** -- **[byte5](https://byte5.de)** -- **[OP.GG](https://op.gg)** +### API Dokümantasyonu +Proje içerisinde **Scribe** kullanılmaktadır. `dockerfile` build aşamasında API dokümantasyonu otomatik olarak üretilir. -## Contributing +--- -Thank you for considering contributing to the Laravel framework! The contribution guide can be found in the [Laravel documentation](https://laravel.com/docs/contributions). +## 💻 Faydalı Komutlar -## Code of Conduct +Aşağıdaki komutları konteyner içerisinde çalıştırmak için `docker exec` kullanabilirsiniz: -In order to ensure that the Laravel community is welcoming to all, please review and abide by the [Code of Conduct](https://laravel.com/docs/contributions#code-of-conduct). +**Migrasyonları Çalıştır:** +```bash +docker exec -it truncgil-finance-app php artisan migrate +``` -## Security Vulnerabilities +**Verileri Seed Et:** +```bash +docker exec -it truncgil-finance-app php artisan db:seed +``` -If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via [taylor@laravel.com](mailto:taylor@laravel.com). All security vulnerabilities will be promptly addressed. +**Logları Takip Et:** +```bash +docker compose -p finance logs -f +``` -## License +--- -The Laravel framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT). +## 📝 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.