-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
156 lines (117 loc) · 4.29 KB
/
Makefile
File metadata and controls
156 lines (117 loc) · 4.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
.PHONY: help build up down restart logs shell-laravel shell-react shell-flask shell-db test lint fetch-articles migrate fresh seed clean prune
# Varsayılan hedef
help:
@echo "Innoscripta News Aggregator - Kullanılabilir Komutlar"
@echo "======================================================"
@echo ""
@echo "Docker Komutları:"
@echo " make build - Container'ları build et"
@echo " make up - Projeyi başlat"
@echo " make down - Projeyi durdur"
@echo " make restart - Projeyi yeniden başlat"
@echo " make logs - Tüm logları göster"
@echo " make logs-laravel - Laravel loglarını göster"
@echo " make logs-react - React loglarını göster"
@echo " make logs-flask - Flask loglarını göster"
@echo ""
@echo "Shell Erişimi:"
@echo " make shell-laravel - Laravel container'ına bağlan"
@echo " make shell-react - React container'ına bağlan"
@echo " make shell-flask - Flask container'ına bağlan"
@echo " make shell-db - MySQL container'ına bağlan"
@echo ""
@echo "Laravel Komutları:"
@echo " make migrate - Migration'ları çalıştır"
@echo " make fresh - Veritabanını sıfırla (DİKKAT: Veri silinir!)"
@echo " make seed - Seed verilerini yükle"
@echo " make fetch-articles - Haberleri API'lerden çek"
@echo " make test - PHPUnit testlerini çalıştır"
@echo " make lint - Laravel Pint ile kod kontrolü"
@echo " make tinker - Laravel Tinker'ı aç"
@echo ""
@echo "React Komutları:"
@echo " make test-react - React testlerini çalıştır"
@echo ""
@echo "Temizlik:"
@echo " make clean - Container'ları durdur ve sil"
@echo " make prune - Kullanılmayan Docker kaynaklarını temizle"
@echo ""
# ==================== Docker Komutları ====================
build:
docker compose build
up:
docker compose up -d
up-logs:
docker compose up
down:
docker compose down
restart: down up
logs:
docker compose logs -f
logs-laravel:
docker compose logs -f laravel-app
logs-react:
docker compose logs -f react-app
logs-flask:
docker compose logs -f flask-app
logs-db:
docker compose logs -f db
# ==================== Shell Erişimi ====================
shell-laravel:
docker compose exec laravel-app bash
shell-react:
docker compose exec react-app sh
shell-flask:
docker compose exec flask-app sh
shell-db:
docker compose exec db mysql -u user3 -p123123123 dbo_laravel
# ==================== Laravel Komutları ====================
migrate:
docker compose exec laravel-app php artisan migrate
fresh:
@echo "⚠️ DİKKAT: Bu komut tüm verileri silecek!"
@read -p "Devam etmek istiyor musunuz? [y/N] " confirm && [ "$$confirm" = "y" ]
docker compose exec laravel-app php artisan migrate:fresh --seed
seed:
docker compose exec laravel-app php artisan db:seed
fetch-articles:
docker compose exec laravel-app php artisan articles:fetch
fix-urls:
docker compose exec laravel-app php artisan articles:fix-urls
test:
docker compose exec laravel-app php artisan test
test-unit:
docker compose exec laravel-app php artisan test --testsuite=Unit
test-feature:
docker compose exec laravel-app php artisan test --testsuite=Feature
test-coverage:
docker compose exec laravel-app php artisan test --coverage
lint:
docker compose exec laravel-app ./vendor/bin/pint
lint-fix:
docker compose exec laravel-app ./vendor/bin/pint --fix
tinker:
docker compose exec laravel-app php artisan tinker
cache-clear:
docker compose exec laravel-app php artisan cache:clear
docker compose exec laravel-app php artisan config:clear
docker compose exec laravel-app php artisan route:clear
docker compose exec laravel-app php artisan view:clear
# ==================== React Komutları ====================
test-react:
docker compose exec react-app npm test
# ==================== Temizlik ====================
clean: down
docker compose rm -f
prune:
docker system prune -f
docker volume prune -f
# ==================== Hızlı Başlangıç ====================
init: build up
@echo "✅ Proje başlatıldı!"
@echo "📱 React: http://localhost:3000"
@echo "🔧 Laravel API: http://localhost:8080"
@echo "🗄️ phpMyAdmin: http://localhost:8081"
@echo "🧪 Flask NLP: http://localhost:5001"
status:
docker compose ps