2016-05-16 25 views
11

'daki bir hizmeti devre dışı bırakmak için herhangi bir yol var mı? Durumda, bir hizmeti geçici olarak docker-compose dosyasında devre dışı bırakmak istiyorum.Docker-compose.yml

Elbette yorum yapabilirdim, ama "enabled: false" demek için herhangi bir seçenek var mı?

+2

Yanıt, "neye bağlıdır" ... başarmaya çalıştığınız şey. Eğer "docker-up up" komutunu çalıştırırsanız, tüm hizmetleri varsayılan olarak başlatacaktır. Ancak, "docker-compose up myservice" çalıştırırsanız, myservice ve ona bağlı şeyler başlatacaktır. Bağımlılıkları ayarlayarak bunu yapabilirsiniz, böylece kötü servis bu komutla başlamaz. İstediğiniz hizmetleri almak için "docker-compose run" da yapabilirsiniz. Doğru seçim, ihtiyacınız olan esnekliği sağlamak için bunu birden fazla kompozisyon dosyasına ayırmak olabilir. –

cevap

18

Sadece değiştirmek amacıyla entrypoint or command yeniden tanımlamak söyledi hiçbir şey yapmadan, hemen konteyner çıkış yapacak hiçbir şey (/bin/true)

yapar şeyle komut.


shadi yorumların aşağıdaki ipuçlarını ekler: Eğer hizmet tüm inşa almak istemiyorsanız

, sadece olan bir Dockerfile işaret edecek inşa anahtarını yeniden tanımlamak:

FROM tianon/true 
ENTRYPOINT ["/true"] 
+2

Ayrıca sonsuz yeniden başlatmalardan kaçınmak için 'restart:' no ''ekleyebilir/değiştirebilirim – DUzun

1

yaml dosyası oluşturmak Docker tanımlanan bir hizmeti devre dışı bırakmak için bir yolu yoktur. , Zaten başlar

command: echo "{put your service name here} disabled" 

: VonC önerisi mevcut seçenekler Ben geçici olarak devre dışı bırakmak istediğiniz servise aşağıdaki ekstra satırı ekleyin

1

Birlikte 0 kopyaları hizmet ölçek olacaktır.