Docker push başarısız olduğunda bash betiğinde 3 kez nasıl döngü yapılır?


9

Ben sadece docker bir görüntü iter bir bash komut dosyası var:

docker push $CONTAINER_IMAGE:latest

Bu başarısız olduğunda 3 kez döngü istiyorum. Bunu nasıl başarmalıyım?

Yanıtlar:


22

Kullanın for-loopve && break:

for n in {1..3}; do
    docker push $CONTAINER_IMAGE:latest && break;
done

breakdöngüden çıkar, ancak yalnızca docker pushbaşarılı olduğunda çalışır . Eğer docker pushbaşarısız, bu hata ile çıkılacak ve döngü devam eder.


4
Teknik olarak, OP başarısız olduğunda üç kez dönmesini istiyor . Peki, döngü sayacı 4 olmamalı mı?
RonJohn

5

Ayrıca kullanabilirsiniz :

for n in {1..3}; do
     if docker push $CONTAINER_IMAGE:latest  
     then 
          break;
     fi
done

thenDeyim liman işçisi komutu başarılı yalnızca girilecektir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.