frappe_docker/dokploy/install.sh
ubden 3e9c8bbd4e feat: Complete Dokploy setup with modular structure and extensive documentation
- Added Dokploy setup documentation including Dockerfile, Docker Compose configurations, and automation scripts.
- Integrated 9 applications (ERPNext, CRM, LMS, Builder, Print Designer, Payments, Wiki, Twilio Integration, ERPNext Shipping) into a single image.
- Implemented health checks, production optimizations, and CI/CD workflows with GitHub Actions.
- Created comprehensive guides for environment variables, deployment, and modular setup.
- Introduced a checklist for deployment and a changelog for tracking changes.
2025-10-13 22:51:01 +03:00

151 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 -p "Devam etmek için .env dosyasını düzenleyin ve Enter'a basın..."
fi
# Ayarları yükle
source .env
echo "Kurulum Ayarları:"
echo " Site Adı: ${SITE_NAME:-site1.localhost}"
echo " HTTP Port: ${HTTP_PORT:-80}"
echo ""
# Onay al
read -p "Bu ayarlarla devam edilsin mi? (y/n) " -n 1 -r
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 ""