اليوم في ٠٤:١٠
صاحب الموضوع
Günümüzde web projelerinde yönetim panelleri, uygulama ve veritabanı yönetimini kolaylaştırmak adına önemli bir rol oynar. PHP tabanlı bir admin panel kurulumunu konteyner teknolojileriyle gerçekleştirmek, hem ortam izolasyonu sağlar hem de dağıtımı kolaylaştırır. Bu yazıda, Docker kullanarak bir PHP admin panel konteyneri kurulumunun temel adımlarını detaylandıracağım.
İlk olarak, Docker'ın sağladığı konteyner teknolojisinin avantajlarına değinmek gerekirse, farklı geliştirme ortamları ve sunucu ortamları arasında tutarlılık sağlar. Ayrıca, bağımlılıkların yönetimi ve uygulama izolasyonu açısından oldukça kullanışlıdır. PHP ve MySQL kullanarak bir admin panel kurmak, genellikle aşağıdaki temel bileşenleri içerir:
- Dockerfile ve docker-compose.yml dosyalarının hazırlanması
- PHP ve web sunucusu (Apache veya Nginx) yapılandırması
- Veritabanı (MySQL veya MariaDB) kurulum ve yapılandırması
- Admin panel arayüzünün entegre edilmesi (örneğin, kendi geliştirilmiş veya hazır açık kaynaklı panel)
Öncelikle, docker-compose.yml dosyasını oluşturarak, PHP uygulaması ve veritabanı konteynerlerini tanımlarız:
123456789101112131415161718192021222324252627282930313233343536
version: '3.8'
services:
web:
image: php:8.0-apache
container_name: php_admin_web
volumes:
[list]
[*]./src:/var/www/html
[*]./config/apache:/etc/apache2/sites-available
[/list]
ports:
[list]
[*]"8080:80"
[/list]
depends_on:
[list]
[*]db
[/list]
db:
image: mariadb:10.5
container_name: mariadb_db
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: adminpanel
MYSQL_USER: admin
MYSQL_PASSWORD: adminpass
volumes:
[list]
[*]db_data:/var/lib/mysql
[/list]
volumes:
db_data:
Burada,
src klasörü içerisindeki PHP ve admin panel dosyalarını
web konteynerine mount ediyoruz. Ayrıca, veritabanı konteyneri MariaDB kullanarak, güvenlik ve performans açısından uygun ayarları yapıyoruz.
Sonrasında, Apache veya Nginx konfigürasyon dosyasını uygun şekilde hazırlayarak, admin panelinin düzgün çalışmasını sağlarız. Bu yapılandırma, URL yönlendirmeleri ve güvenlik ayarlarını içerir.
En önemli noktalardan biri, yapılandırma ve ortam değişkenlerini doğru yönetmek ve konteynerleri düzenli olarak güncellemektir. Bu sayede, ölçeklenebilir ve sürdürülebilir bir yönetim paneli altyapısı kurmuş oluruz.
Bu temel adımlar, PHP tabanlı bir admin paneli konteyner ortamında kurulumu için başlangıç noktası sunar. Detaylara ve ihtiyaçlara göre, erişim kontrolleri, SSL yapılandırması ve otomasyon süreçleri eklenebilir.