https://paddling.com/paddle/trips/trucchi-monopoly-go-ios-e-android-link-dadi-gratis-monopoly-go-2025 https://paddling.com/paddle/trips/come-avere-dadi-infinite-su-monopoly-go-dadi-gratis-su-monopoly-go-ios-android https://paddling.com/paddle/trips/nuovo-500-dadi-gratis-monopoly-go-per-ios-e-android-08fdgfd https://paddling.com/paddle/trips/1000-dadi-gratis-monopoly-go-generatore-dadi-infinite-su-monopoly-go-app-ios-android https://paddling.com/paddle/trips/link-2000-dadi-gratis-monopoly-go-link-dadi-gratis-su-monopoli-go-per-android-e-ios-2025 https://paddling.com/paddle/trips/trucchi-dadi-gratis-monopoly-go-hack-italiano-per-ios-y-android-dadi-illimitati-infinite https://paddling.com/paddle/trips/trucchi-monopoly-go-ios-e-android-link-dadi-gratis-monopoly-go-2025/?asdet https://paddling.com/paddle/trips/come-avere-dadi-infinite-su-monopoly-go-dadi-gratis-su-monopoly-go-ios-android/?wdug https://paddling.com/paddle/trips/nuovo-500-dadi-gratis-monopoly-go-per-ios-e-android-08fdgfd/?ri3s https://paddling.com/paddle/trips/1000-dadi-gratis-monopoly-go-generatore-dadi-infinite-su-monopoly-go-app-ios-android/?asod https://paddling.com/paddle/trips/link-2000-dadi-gratis-monopoly-go-link-dadi-gratis-su-monopoli-go-per-android-e-ios-2025/?rgt https://paddling.com/paddle/trips/trucchi-dadi-gratis-monopoly-go-hack-italiano-per-ios-y-android-dadi-illimitati-infinite/?saidw https://nothingbuttop10.bandcamp.com/album/paddletrip-italiano-obl-nuovo

Mon. Aug 4th, 2025
Bir Alt Dizini Hariç Tutarken Docker Birimi Nasıl Monte Edilir

Docker Volumes, kapsayıcılarınız için kalıcı depolama sağlar. Hacimlerde depolanan veriler kaplardan bağımsız olarak depolanır, böylece yeniden başlatmalar ve değiştirmelerden sonra geri yüklenebilir. Birimler, aynı anda birden fazla kapsayıcı ile kullanımı destekleyerek veri paylaşım durumlarını kolaylaştırır.

Bir Docker biriminin bağlanması, içeriğinin hedef kapsayıcı içindeki belirli bir dizin yolunda kullanılabilir olmasını sağlar. Birimin dosya sistemi ağacındaki her şey erişilebilir hale gelir. Birim verilerinde belirli alt dizinleri hariç tutmak istiyorsanız, bu bir zorluk oluşturabilir. Bu makalede, belirli yollardan kaçınırken birimleri monte etmek için basit bir teknik öğreneceksiniz.

Neden bunu yaptın?

Tüm birimi monte etme varsayılan davranışı normalde arzu edilir. Birimler, kapsayıcılar tarafından oluşturulan verileri depolamak için tasarlanmıştır, böylece içeriklerinin uygulamalarınızla alakalı olması gerekir.

Birimler, ana bilgisayar bağlama bağlantıları kullanılarak da doldurulabilir. Bunlar, makinenizdeki bir dizini doğrudan kapsayıcınızın içindeki bir yola eşler. Ana bilgisayar dizini içinde yapılan değişiklikler kapsayıcıya otomatik olarak yansıtılacaktır.

Bağlama bağlamaları, uygulama geliştirmeyi hızlandırmak için yaygın olarak kullanılır. Docker imajınızı yeniden oluşturmak zorunda kalmadan kaynak kodunu değiştirebilir ve değişikliklerinizi gözlemleyebilirsiniz. Proje çalışma dizinleri genellikle, yansıtılmasını istemediğiniz bazı klasörler içerir; node_modules ve vendor. Bunlar, görüntü oluşturma adımları sırasında doldurulan kapsayıcınızda zaten mevcut olabilir. Yerel klasörlerinizi bağlanmaktan hariç tutmak, görüntünüz tarafından sağlanan bağımlılıkları kullanarak kodunuzu güvenilir bir şekilde test etmenize olanak tanır.

Docker Birim Bağlantılarından Alt Dizinler Nasıl Dışlanır

Alt dizinler, basit bir teknik kullanılarak bir birim bağlamasından çıkarılabilir: yoksaymak istediğiniz yolda başka bir bağlama oluşturun. eğer montaj yapıyorsan ~/app ile /opt/app kapsayıcınızda hariç tutabilirsiniz ~/app/node_modules dizine ikinci bir boş birim monte ederek /opt/app/node_modules:

$ docker run --name app \
    -v ~/app:/opt/app \
    -v /opt/app/node_modules \
    app-image:latest

Bu kapsayıcı, ana makinenizin içeriğiyle başlayacak ~/app dizin erişilebilir /opt/app. Yine de /opt/app/node_modules barındırıcınızınki yerine temel resim tarafından sağlanan orijinal içeriği içerecektir. ~/app/node_modules dizin.

Bu, Docker’ın yeni oluşturulan boş birimleri, bağlandıkları hedef yolun mevcut içeriğiyle otomatik olarak doldurması nedeniyle işe yarar. Eğer koşarsan npm install Docker dosyanızın bir parçası olarak, /opt/app/node_modules zaten tüm bağımlılıklarınızı içerecektir. İlk birim bağlama, ana bilgisayar dizininizi kapsayıcıya bağlar, ancak ikincisi, onu boş bir birim ile geçersiz kılar. /opt/app/node_modules. Bu daha sonra görüntüde bulunan dosya ve klasörlerle doldurulur.

Birim bağlamalarınızın sırası önemlidir – alt dizin bağlamanın daha az spesifik ana bağlamadan sonra uygulanması gerekir. Aksi takdirde içeriği ~/appsürümü de dahil olmak üzere node_moduleshariç tutmayı oluşturması amaçlanan boş birimi geçersiz kılacaktır.

Dosyaları Hariç Tutma

Tek tek dosyaları etkili bir şekilde dışlamak için benzer bir teknik kullanabilirsiniz. Ana bilgisayarınızın montajı /dev/null dosya yoluna, içeriği yokmuş gibi boş bırakacaktır.

$ docker run --name app \
    -v /dev/null:/opt/app/config.yaml \
    app-image:latest

Bu yalnızca dosyaları hariç tutmak için çalışır – /dev/null dizin yollarıyla eşleşmeyecek. Yöntem, temel görüntünüzdeki orijinal sürümü korurken bir dosyayı atlamak için de çalışmaz. Harita olacak /dev/null yola, oradaki mevcut herhangi bir dosyayı değiştirerek.

Docker Compose’u Kullanma

Bu tekniklerin ikisi de Docker Compose ile çalışır. Hizmet tanımınızı ayarlayın volumes normal bağlama bağlamanızı ve uygun bir boş birim geçersiz kılmayı dahil etmek için bölüm.

services:
  app:
    image: app-image:latest
    build: .
    volumes:
      - ~/app:/opt/app
      - /dev/null:/opt/app/config.yaml      # Exclude file
      - /opt/app/node_modules               # Exclude directory

Koşma docker-compose up düz ile aynı etkiye sahip olacak docker run yukarıda gösterilen örnek.

Özet

Docker birim bağlamaları, kapsayıcının hedef yolundaki her şeyi bağlı ana bilgisayar dizininin içeriğiyle değiştirir. Bazı durumlarda, belirli ana bilgisayar yollarının bağlanmasını hariç tutarak bu davranışı özelleştirmek isteyebilirsiniz.

Bu makalede, kapsayıcının içindeki bir alt dizine boş bir birim eklemenin ilk bağlamayı nasıl geçersiz kılacağını gördünüz. Kapsayıcı alt dizininin içeriği, resminiz tarafından sağlanan orijinal içeriğe geri dönecektir. Bu tekniğin bir varyasyonu dosyalar için de kullanılabilir, ancak yolun üzerine şunlar yazılacaktır: /dev/null yerine.

By admin

Leave a Reply

Your email address will not be published. Required fields are marked *