Şirketimizde çok sayıda Drupal sitesi bulunduruyoruz, mevcut kurulumumuz şuna benzer:
- Her sitenin kod tabanının kendi git repo'su vardır
- Bir sonraki sürüm için yeterince kararlı olması muhtemel olmayan yeni özellikler git'te kendi özellik dallarını edinin
Yukarıda söyleyebilirim çoğu Drupal siteleri için oldukça yaygındır.
Şirketimizde özel olarak yaptığımız şey, özel bir drush komutu olan ' Drush Debian Packaging ' kullanarak dağıtım alanlarını debian paketidir .
Drush Debian Packaging, Drupal sitelerini Debian veya Ubuntu sunucularına dağıtmanın bir yolu olarak Drupal sitelerinin Debian paketlerini oluşturmak için bir Drush komutu sağlar.
Drush Debian Packaging, sitelerinizin ihtiyaçlarına en uygun Debian paketini oluşturmak için Drupal kanca sistemini kullanır. Özellikler:
- Apache2 ve Nginx web sunucuları için otomatik sanal ana bilgisayar yapılandırması
- /Etc/cron.d içinde cron kurulumu
- Siteler / varsayılan / dosyalar için bölüm bölünmüş otomatik kod dağıtımı
- Dpkg debconf ayarları aracı ile otomatik yapılandırma
- Otomatik dağıtım işlemi
- 'dan paket oluşturmak için özel Git VCS işleyicisi
Ne anlama geliyor?
Bir sürüm oluşturmak için:
cd /path/to/drupal-root
drush dh-make
Bir sürümü dağıtmak için önce .deb dosyasını kümedeki tüm web sunucularına SCP yapın. Sonra tüm web sunucularında çalıştırın ( komutu aynı anda gruptaki tüm sunuculara yazmak için linux cssh paketini kullanabilirsiniz ):
sudo dpkg -i drupal-site-yoursitehere.2011.05.25-1.all.deb
Bir web sunucusunda:
cd /path/to/drupal-root
sudo -u drupal-site-yoursitehere drush updb && drush fra -y && drush cron
Bitti
Tabii ki bu geri almak artık bir kod tabanı bakış açısından önemsiz, sadece .deb'nin önceki sürümünü tüm web sunucularına yükleyin ve veritabanını geri alın.
Bununla ilgili sorularınızı cevaplamaktan mutluluk duyarız