2015-01-13 20 views
7

inotifywait aracılığıyla bir dizindeki değişiklikleri dinleyen bir docker konteynerinin içinde çalışan bir komut dosyası var. Dizin, ana sisteme docker -v aracılığıyla bağlanır.docker-kapsayıcısındaki inotifywait değişiklikleri kaydetmiyor

Bu nedenle, bu dizindeki dosyalar değiştiğinde inotifywait tetiklenmez.

Bu benim fig up üzerinden setup başlattığınızda, komut yürütüldüğünde

web: 
    build: . 
    ports: 
    - "80:80" 
    volumes: 
    - ./conf:/etc/nginx/sites-enabled 

konteyner (şek yoluyla) böyle başlatılır

inotifywait -e create -e modify -e delete -e move /etc/nginx/sites-enabled 

sorunlu komut-çizgidir, ancak değişiklikler monte edilen hacimde inotify-barrier tetiklemez.

+0

boot2docker ssh dokunmatik/dosya /, Inotify başlayan bir dizin ve bir dosya oluşturduk ve haberdar edildi. Yani docker -v ' – user2915097

+0

docker! = Sanallaştırmasıyla ilgili birimlerle alakalı görünüyor, belki de bu, docker'ın yalıtımı kaldıramayacağı bir edgecase. –

+0

Ben docker -v' ile oluşturulan docker kompozisyonu (fig) birimleri kullanarak aynı davranışı görüyorum. –

cevap

0

(Sadece boot2docker etiketini gördüğüm için) Dosyanızın dosyanın değiştirildiğini görebiliyor musunuz? Ev sahibinizde yazdıysanız, docker arka planını çalıştıran sanal makinede değil, Mac'inizde bir inotify olayı olacaktır.

TL; DR: Ben Inotify-araçları yüklü temel kapla bir kontrol üzerine/monte/hacim

İlgili konular