‫TAMAM.
‫Bu benim 2. ödevim. Burada üç bölme açık.
‫Sol tarafımda docker compose komutlarını çalıştırabileceğim bir yer var. Bu dizinde, başladığınız dizinin aynısını
‫görebilirsiniz. Nasıl geçeceğimi anlatan benioku.
‫Ardından boş bir Dockerfile ve boş bir docker compose dosyası.
‫Sonra sağ tarafımda Vim'i açtım, böylece düzenlemem gereken dosyalarımı en üstte görebiliyorum. Aşağıda da talimatlar
‫var.
‫İlk olarak, Docker dosyasına odaklanmam gerekiyor.
‫Drupal 8'den yapmam gerektiğini söylüyor. 2. Sonra Git'i yüklemek için bir çalıştırma yapmam gerekiyor. Güncellemeleri al.
‫Güncelleme.
‫Bu arada, install -y... Oradaki -y otomatik
‫olarak evet demek.
‫Ve bu şekilde otomatik olarak... Git'i yüklemenizi istemeyecektir.
‫Bu da uygun bir temizlikten bahsediyor.
‫Yani apt-get'i her kullandığınızda, apt-get güncellemesi yaptığınızda apt-get aslında bir önbellek oluşturur.
‫Bu yüzden bu önbelleği gerçekten silmek istiyoruz çünkü ihtiyacımız olmayan görüntümüzü
‫en az 10 MB kaplıyor.
‫Bu durumda, ters eğik çizgi kullanabilirim, yani bir sonraki satırı bu komuta dahil edebilirim. Ve sonra && sembolleri...
‫ya
‫da ampersand ampersand... bana ilk komut başarılı olursa bunu da yapmamı söylüyor.
‫Ve aslında burada bir tane var.
‫Yani bu aslında yapacağım üçüncü komut. Bu belirli dosyaları kaldırın.
‫Bu oldukça yaygın bir durum. Bunu pek çok görüntüde görebilirsiniz.
‫Sadece temiz kalmaları için tüm resimlerime ekliyorum.
‫Aslında işlevini yerine getirmesi için bir gereklilik değildir.
‫Sadece temiz tutmak için var.
‫Bu yüzden şablonumuz veya temalarımız için çalışma dizinini değiştirmemiz gerekir.
‫O zaman bir klonlama yapmamız gerekecek.
‫Devam edeceğim ve... Bunu kopyala ve yapıştır.
‫Eğer bir Git kullanıcısıysanız, bunların tanıdık geldiğini görebilirsiniz. Git, belli ki bizim... bir şablon olan bu belirli
‫Git deposunu klonlamaktır. Belirli bir dalı kullanıyor. Bu iki değişkeni, buraya koyduğum
‫bu iki seçeneği, yalnızca en son
‫kopyayı ve yalnızca belirli bir dalı indirmesini söylemek için kullanıyor. Temel olarak size çok fazla zaman kazandırır.
‫Aslında Git depolarını indirirken size dakikalar kazandırır. Yalnızca mutlak en son işleme ve içindeki
‫tüm dosyalara ihtiyacınız varsa ve yalnızca belirli bir dala ihtiyacınız
‫varsa, muhtemelen bir görüntüyü dağıtacağınız zaman ihtiyacınız olan tek şey budur.
‫Çünkü bunu değiştirecek olsaydık, sadece yeni bir imaj oluştururduk. Değil mi?
‫Bu iyi bir ipucu.
‫İmaj oluşturmak için Git'i çok kullanıyorsanız, deponun tüm geçmişine
‫ihtiyacınız olmadığı için size gerçekten çok fazla zaman ve yer kazandırır. Sadece en son işleme ihtiyacınız var.
‫TAMAM.
‫O zaman buradaki sorun bu dosyaların... Bu Docker'da yaygın bir sorundur... Burada çalıştırdığınız
‫tüm komutlar root olarak çalışacaktır.
‫Yani bu dosyalar indirildi ve root olarak bu dizine yerleştirildi.
‫Ancak sorun şu ki Apache web sunucusu bu dosyaların www veri kullanıcısı olmasını beklemektedir.
‫Bu yüzden iyi çalışması için daha sonra izinleri değiştirmem gerekiyor.
‫Bu komutları bilmek zorunda değilsiniz.
‫Ancak bu, değişim sahibi anlamına gelen çok yaygın bir gösteridir. Ve -r, alt dizinler ve alt dosyalar dahil olmak
‫üzere tüm dosyaların bu kullanıcıya ve bu gruba ait olduğu anlamına gelir.
‫Bunu sadece oluşturduğumuz dizinle sınırlandıracağız.
‫Bize birkaç mikrosaniye kazandır. Daha sonra, uygulamanın başladığı çalışma dizininde olmayı
‫beklemesi ihtimaline karşı çalışma dizinimi geri değiştirmem gerekiyor.
‫Bir cmd veya başka bir şey gibi başka bir şey belirtmeme gerek yok, çünkü bunlar
‫zaten from görüntüsünde belirtilmiş...
‫çektiğim Drupal görüntüsü. Tamam. Sanırım orada işim bitti.
‫Compose dosyasına gidelim.
‫Dosyanızı daha önce sakladıysanız, şöyle bir şeye benzeyebilir. Değil mi?
‫Hizmetlere sahiptir ve ardından drupal
‫görüntü adıyla Drupal'a ve ardından birimlere ve ardından postgres'e ve parola için ortam değişkenine sahiptir.
‫Ve sonra hacimleri tanımlarız.
‫Bu durumda bu işi yapmak için
‫yapmamız gereken şey, talimatlarımıza göre, görüntüyü yeniden adlandırmamız gerekiyor.
‫Bir oluşturma dosyasında bir
‫görüntü anahtarı ve bir yapı anahtarı olduğunda, görüntü anahtarının amacı değişir.
‫Şimdi ona, 'hey,
‫Drupal resmi imajını indirmeni istiyorum' demek yerine, derlemeyi eklediğimizde, 'hey, yerel makinemdeki
‫belirli bir konumdan derlemek istiyorum ve sonra bu imaj adını oluşturduğunuz imajı çağırmak istiyorum' diyoruz. ' Şimdi, aslında resim adını belirtmek zorunda değilim.
‫Resim satırını tamamen silebilirim ve aslında muhtemelen fark
‫etmiş olduğunuz Compose adlandırmasına dayalı olarak otomatik olarak adlandırılmış bir ad oluşturur. Compose'u her kullandığınızda, her şeyi o projeye uygun olacak
‫şekilde adlandırır.
‫Ancak, devam edeceğiz ve buraya sabit kod yazacağız.
‫Yapı için bir nokta koyduğuma dikkat edin.
‫Bu sadece bir kısayoldur, "hey, sadece
‫bu dizinde oluşturun ve varsayılan ad olan Dockerfile'ı kullanın" demenin kısaltmasıdır. ' Ona herhangi bir yapı seçeneği sunmuyorum.
‫Ona özel bir derleme dosyası veya özel bir konum söylemiyorum.
‫Ben sadece en basit şekilde anlatıyorum ki biz de bunu böyle inşa ettik.
‫Tamam. Bu iş bitti.
‫Bu, Docker dosyamı temel alan özel bir görüntü oluşturmalıdır. Sonra burada postgres'te,
‫aslında bir birim koymam gerekiyor.
‫Verilerimizi korumasını istiyoruz.
‫Verileri korumak istememizin nedeni, bunu
‫test ediyorsanız ve bir docker compose down yaparsanız, aslında veritabanını silecek ve o zaman...
‫Tekrar açtığımızda veriler orada olmayacak. Bu nedenle, Compose yeniden başlatıldığında verileri koruduğumuzdan
‫emin olmak istiyoruz.
‫Şimdi bir docker compose down yaparsak, bu veri birimini oraya yerleştirdikten sonra, sonunda bir -v yapmadığımız
‫sürece, aslında bu veri birimini kaldırmayacaktır, bu da ona "hey, ben de birimleri silmek istiyorum" der. ' Sanırım
‫bu doğru.
‫Drupal veri
‫var lib postgres SQL verileri.
‫Tamam.
‫O zaman bunu da buraya yazmam gerekiyor.
‫Veri.
‫Tamam.
‫Sanırım hazırız.
‫Dosyalarımı kaydediyorum.
‫Bakalım bir docker compose yapabilecek miyiz? Tamam, tarayıcımız localhost 8080'i kontrol edelim.
‫Tamam.
‫Tüm bunlar
‫işe yaradıysa, daha önce yaptığımız gibi bu
‫yüklemenin üzerinden geçebilirim ve postgres postgres mypasswd postgres.
‫Kaydet ve devam et. Bu sefer biraz hızlı gidiyorum çünkü bunu daha önce yaptığınızı düşünüyorum.
‫Siteyi çok hızlı bir şekilde yapılandıracağım.
‫TAMAM.
‫Sitedeyiz
‫ve talimatlar bize görünüm sekmesine gitmemizi ve Bartik varsayılanında olduğumuzu fark etmemizi söylüyor.
‫Burada, imajımızla birlikte yüklememiş
‫olsaydık var olmayacak olan bu kaldırılmış temamız vardı.
‫Yükle'ye tıklayıp varsayılan olarak ayarlayabilirim.
‫Ardından siteye geri tıklayın.
‫Sitemde, CSS ve web siteleri
‫için oldukça popüler bir şablonlama sistemi olan Twitter'ın bootstrap çerçevesini kullanan tamamen yeni bir temam
‫var.
‫Yani her şey olması gerektiği gibi çalışıyor.
‫Geri dönüp bunu gerçekten
‫durdurursam, iptal edersem ve ardından bir aşağı işlem yaparsam, aslında görüntüleri silecektir.
‫Ancak unutmayın, bu verileri silmeyecektir.
‫Eğer tekrar bir docker oluşturursam,
‫Drupal modüllerindeki, profillerindeki, sitelerindeki ve temalarındaki tüm bu yapılandırma dosyalarının
‫ve veritabanındaki verilerin hala orada olması gerekir.
‫Yenile tuşuna bastığımda hala çalışıyor olmalı.
‫Bu yöntemin en güzel yanı, resimlerinizi
‫ve kaplarınızı nispeten temiz tutabilmenizdir.
‫Bu şekilde, projeler
‫arasında geçiş yaparken, teknik olarak o eşyalardan kurtulabilir ve onları kendi haline bırakabilirsiniz... ciltler... tek başına ciltler... İçlerindeki verileri silmeyin. Birimleri rahat bırakın ve verilerini silmeyin.
‫Böylece projeye geri döndüğünüzde,
‫tüm örnek veriler zaten elinizde olur ve sıfırdan başlamazsınız.
‫Tamam. Bu kadar.