aaPanel, modern sunucu yönetimi için geliştirilmiş açık kaynaklı bir kontrol panelidir.
aaPanel, modern sunucu yönetimi için geliştirilmiş açık kaynaklı bir kontrol panelidir. Linux tabanlı sistemlerde web sunucusu, veritabanı ve uygulama dağıtımını kolaylaştırır. Docker entegrasyonu ise container teknolojisiyle uyumluluğu artırarak, ölçeklenebilir ve izole ortamlar oluşturmayı sağlar. Bu rehber, kurumsal ortamlar için aaPanel’in sorunsuz kurulumu ve Docker ile entegrasyonunu adım adım ele alacaktır. Özellikle geliştiriciler ve sistem yöneticileri için pratik bir kaynak sunarak, üretim seviyesinde deployment’ları hızlandırmayı hedefler.
aaPanel kurulumuna başlamadan önce, sistem gereksinimlerini karşılamalısınız. Desteklenen işletim sistemleri CentOS 7/8, Ubuntu 18.04/20.04 ve Debian 9/10’dur. En az 1 GB RAM, 10 GB disk alanı ve root erişimi zorunludur. Bu adımlar, temiz bir sunucuda gerçekleştirilmelidir ki olası çakışmalar önlensin.
Kurulum sürecini başlatmak için terminale aşağıdaki komutu girin: curl -sSO https://www.aapanel.com/script/install-6.8_en.sh && bash install-6.8_en.sh. Bu betik, otomatik olarak bağımlılıkları yükler, Nginx veya Apache’i seçmenizi sağlar ve veritabanı (MySQL/MariaDB) ile PHP sürümlerini yapılandırır. Kurulum yaklaşık 5-10 dakika sürer. Tamamlandığında, panel erişimi için verilen IP:8888 adresi ve varsayılan şifre not edin. Güvenlik için ilk iş olarak şifreyi değiştirin ve firewall kurallarını etkinleştirin (örneğin, ufw allow 8888).
Kurulum sonrası optimizasyon, performansı artırır. aaPanel arayüzünden “App Store” bölümüne giderek güvenlik eklentilerini yükleyin. Swap alanı ekleyin: dd if=/dev/zero of=/swapfile bs=1024 count=512000 && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile. Bu, bellek yetersizliğinde sistemi korur. Ayrıca, SELinux’u permissive moda alın veya devre dışı bırakın ki dosya izinleri sorun yaratmasın.
Yaygın hatalar arasında port çakışması ve bağımlılık eksikliği yer alır. Port 8888 meşgulse, netstat -tuln | grep 8888 ile kontrol edin ve gerekirse bt.cnf dosyasını düzenleyin. Betik hatası alırsanız, wget ile manuel indirme yapın. Logları /www/server/panel/logs/ dizininden inceleyin; bu sayede spesifik sorunları hızlı teşhis edebilirsiniz. Bu adımlar, kurumsal kurulumlarda %100 başarı sağlar.
Docker, aaPanel ile entegre edildiğinde uygulamaları container’larda izole eder. aaPanel’in terminalinden Docker’ı yüklemek için resmi depo kullanın: yum install -y docker (CentOS için) veya apt install docker.io (Ubuntu için). Ardından servisi başlatın: systemctl start docker && systemctl enable docker. aaPanel arayüzünde “Docker Yöneticisi” eklentisini App Store’dan yükleyin; bu, grafik arayüzle container yönetimini sağlar.
Docker entegrasyonu, aaPanel’in dosya yöneticisiyle uyumludur. Volumes için /www/docker/volumes dizinini oluşturun. Test için basit bir container çekin: docker run hello-world. Bu komut başarıyla çalışırsa, ortam hazırdır. Kurumsal kullanımda, Docker Compose’u etkinleştirin ki çoklu container orkestrasyonu kolaylaşsın.
Docker ağlarını güvenli kılmak için bridge modunu kullanın ve firewall’a ekleyin: firewall-cmd --permanent --add-port=2375/tcp --add-port=2376/tcp. Rootless mod için user namespace etkinleştirin: echo "user.max_user_namespaces=28633" >> /etc/sysctl.conf && sysctl -p. Bu, privilege escalation risklerini minimize eder ve PCI uyumlu ortamlar için idealdir.
Entegrasyonun gücü, web uygulamalarını Docker container’larında çalıştırmakta yatar. aaPanel’den site ekleyin, ardından Docker Yöneticisi’nde yeni container oluşturun. Örneğin, bir Node.js app için: docker run -d -p 3000:3000 --name myapp node:14-alpine. aaPanel proxy ayarlarından trafiği yönlendirin (Nginx conf: location / { proxy_pass http://127.0.0.1:3000; }). Bu, zero-downtime deployment sağlar.
Veritabanı entegrasyonu için Dockerized MySQL kullanın: docker run -d --name mysql-db -e MYSQL_ROOT_PASSWORD=secret -p 3306:3306 mysql:8.0. aaPanel veritabanı yöneticisinden bu container’ı bağlayın. Ölçekleme için Docker Swarm modunu etkinleştirin; aaPanel script’leriyle node ekleyin. Pratik takeaway: Her zaman named volumes kullanın (-v mydata:/var/lib/mysql) ki veri kaybı olmasın.
WordPress dağıtımı: Docker image’ını çekin, aaPanel’den domain bağlayın ve phpMyAdmin ile yönetin. CI/CD için GitHub Actions entegrasyonu: Webhook’larla otomatik build yapın. Performans izleme için aaPanel’in dahili araçlarını Docker stats ile birleştirin: docker stats. Bu yaklaşımlar, geliştirme süresini %50 kısaltır ve hata oranını düşürür.
Bu rehberle aaPanel ve Docker’ı entegre ederek, esnek ve güvenli bir altyapı kurabilirsiniz. Düzenli güncellemeler ve yedeklemelerle (aaPanel Backup Manager), kesintisiz operasyonlar sağlayın. Kurumsal ekipler için bu kombinasyon, kaynak verimliliğini maksimize eder ve yenilikçi projelere odaklanmanızı sağlar.