33 lines
1.0 KiB
Bash
Executable File
33 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
||
|
||
# Proje dizinine git
|
||
cd "$(dirname "$0")"
|
||
|
||
# Proje adını tanımlayalım
|
||
PROJECT_NAME="finance"
|
||
DB_PORT="3308"
|
||
|
||
echo "🚀 '$PROJECT_NAME' projesi kontrol ediliyor..."
|
||
|
||
# 1. Port çakışmasını kontrol et ve temizle
|
||
echo "🔍 Port $DB_PORT kontrol ediliyor..."
|
||
CONFLICTING_CONTAINER=$(docker ps -q --filter "publish=$DB_PORT")
|
||
if [ ! -z "$CONFLICTING_CONTAINER" ]; then
|
||
echo "⚠️ Port $DB_PORT, $(docker ps --filter "id=$CONFLICTING_CONTAINER" --format "{{.Names}}") tarafından kullanılıyor. Temizleniyor..."
|
||
docker rm -f "$CONFLICTING_CONTAINER"
|
||
fi
|
||
|
||
# 2. İsim çakışmalarını temizle
|
||
echo "🧹 İsim çakışmaları temizleniyor..."
|
||
docker rm -f truncgil-finance-app truncgil-finance-web truncgil-finance-db 2>/dev/null
|
||
|
||
# 3. Servisleri başlat
|
||
echo "🆙 Servisler başlatılıyor..."
|
||
docker compose -p "$PROJECT_NAME" up -d --remove-orphans
|
||
|
||
# Durumu göster
|
||
echo "📊 Mevcut durum ($PROJECT_NAME):"
|
||
docker compose -p "$PROJECT_NAME" ps
|
||
|
||
echo "✅ '$PROJECT_NAME' projesi başarıyla ayağa kaldırıldı!"
|