frappe_docker/dokploy/install.sh
ubden 10bcb6a2c9 refactor: Update Dokploy applications for Frappe v15 compatibility and enhance pre-commit configuration
- Updated application branches in `apps.json` and `Dockerfile` to use `version-15` for compatibility with Frappe v15.
- Removed incompatible applications (Twilio Integration, ERPNext Shipping) and documented changes in `APPS_INFO.md`.
- Introduced a new `.pre-commit-config.yaml` for linting and formatting with specific exclusions.
- Fixed linting issues in `install.sh` and added shellcheck directives for better script validation.
- Created `LINT_FIX_COMPLETE.md` to summarize linting fixes and application updates.
2025-10-13 23:13:01 +03:00

152 lines
4.1 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# Frappe ERPNext Dokploy Kurulum Scripti
# Bu script, Dokploy sunucusunda manuel kurulum için kullanılabilir
set -e
echo "==================================="
echo "Frappe ERPNext Dokploy Kurulumu"
echo "==================================="
echo ""
# Renk kodları
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# Gerekli araçları kontrol et
command -v docker >/dev/null 2>&1 || { echo -e "${RED}Docker kurulu değil. Lütfen Docker'ı kurun.${NC}" >&2; exit 1; }
command -v docker-compose >/dev/null 2>&1 || command -v docker compose >/dev/null 2>&1 || { echo -e "${RED}Docker Compose kurulu değil. Lütfen Docker Compose'u kurun.${NC}" >&2; exit 1; }
echo -e "${GREEN}✓ Docker ve Docker Compose bulundu${NC}"
echo ""
# .env dosyası kontrolü
if [ ! -f .env ]; then
echo -e "${YELLOW}! .env dosyası bulunamadı${NC}"
echo " .env.example dosyasından .env oluşturuluyor..."
cp .env.example .env
echo -e "${GREEN}✓ .env dosyası oluşturuldu${NC}"
echo ""
echo -e "${YELLOW}ÖNEMLİ: .env dosyasını düzenleyerek ayarlarınızı yapılandırın!${NC}"
echo " Site adı: SITE_NAME"
echo " Admin şifresi: ADMIN_PASSWORD"
echo " Database şifresi: DB_PASSWORD"
echo ""
read -r -p "Devam etmek için .env dosyasını düzenleyin ve Enter'a basın..."
fi
# Ayarları yükle
# shellcheck source=/dev/null
source .env
echo "Kurulum Ayarları:"
echo " Site Adı: ${SITE_NAME:-site1.localhost}"
echo " HTTP Port: ${HTTP_PORT:-80}"
echo ""
# Onay al
read -r -p "Bu ayarlarla devam edilsin mi? (y/n) " -n 1
echo
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
echo -e "${RED}Kurulum iptal edildi${NC}"
exit 1
fi
echo ""
echo "==================================="
echo "Docker Image'i Build Ediliyor..."
echo "==================================="
echo ""
# Docker image build et
docker-compose build --no-cache
echo ""
echo -e "${GREEN}✓ Docker image başarıyla build edildi${NC}"
echo ""
echo "==================================="
echo "Container'lar Başlatılıyor..."
echo "==================================="
echo ""
# Container'ları başlat
docker-compose up -d
echo ""
echo -e "${GREEN}✓ Container'lar başlatıldı${NC}"
echo ""
echo "==================================="
echo "Kurulum Bekleniyor..."
echo "==================================="
echo ""
# Site kurulumunun tamamlanmasını bekle (maksimum 10 dakika)
TIMEOUT=600
ELAPSED=0
INTERVAL=10
while [ "$ELAPSED" -lt "$TIMEOUT" ]; do
if docker-compose ps | grep -q "create-site.*Exit 0"; then
echo -e "${GREEN}✓ Site kurulumu tamamlandı${NC}"
break
fi
if docker-compose ps | grep -q "create-site.*Exit [^0]"; then
echo -e "${RED}✗ Site kurulumu başarısız oldu${NC}"
echo "Logları kontrol edin: docker-compose logs create-site"
exit 1
fi
echo "Kurulum devam ediyor... ($ELAPSED/$TIMEOUT saniye)"
sleep "$INTERVAL"
ELAPSED=$((ELAPSED + INTERVAL))
done
if [ "$ELAPSED" -ge "$TIMEOUT" ]; then
echo -e "${YELLOW}! Kurulum zaman aşımına uğradı${NC}"
echo "Manuel olarak kontrol edin: docker-compose logs create-site"
fi
echo ""
echo "==================================="
echo "Container Durumu"
echo "==================================="
echo ""
docker-compose ps
echo ""
echo "==================================="
echo "Kurulum Tamamlandı!"
echo "==================================="
echo ""
echo -e "${GREEN}Frappe ERPNext başarıyla kuruldu!${NC}"
echo ""
echo "Erişim Bilgileri:"
echo " URL: http://localhost:${HTTP_PORT:-80}"
echo " Kullanıcı: Administrator"
echo " Şifre: ${ADMIN_PASSWORD:-admin}"
echo ""
echo "Yüklenen Uygulamalar:"
echo " ✓ ERPNext"
echo " ✓ CRM"
echo " ✓ LMS"
echo " ✓ Builder"
echo " ✓ Print Designer"
echo " ✓ Payments"
echo " ✓ Wiki"
echo " ✓ Twilio Integration"
echo " ✓ ERPNext Shipping"
echo ""
echo "Yararlı Komutlar:"
echo " Logları görüntüle: docker-compose logs -f"
echo " Container'ları durdur: docker-compose down"
echo " Container'ları başlat: docker-compose up -d"
echo " Backup oluştur: docker-compose exec backend bench --site ${SITE_NAME:-site1.localhost} backup"
echo ""