ฉันมีสคริปต์ทุบตีซึ่งเพียงนักเทียบท่าดันภาพ:
docker push $CONTAINER_IMAGE:latest
ฉันต้องการวนซ้ำ 3 ครั้งเมื่อสิ่งนี้ล้มเหลว ฉันจะทำสิ่งนี้ได้อย่างไร
ฉันมีสคริปต์ทุบตีซึ่งเพียงนักเทียบท่าดันภาพ:
docker push $CONTAINER_IMAGE:latest
ฉันต้องการวนซ้ำ 3 ครั้งเมื่อสิ่งนี้ล้มเหลว ฉันจะทำสิ่งนี้ได้อย่างไร
คำตอบ:
ใช้for-loopและ&& break:
for n in {1..3}; do
docker push $CONTAINER_IMAGE:latest && break;
done
breakออกจากลูป แต่จะทำงานก็ต่อเมื่อdocker pushสำเร็จ หากdocker pushล้มเหลวมันจะออกโดยมีข้อผิดพลาดและลูปจะดำเนินการต่อ
คุณยังสามารถใช้:
for n in {1..3}; do
if docker push $CONTAINER_IMAGE:latest
then
break;
fi
done
thenคำสั่งจะถูกป้อนเฉพาะในกรณีที่คำสั่งนักเทียบท่าประสบความสำเร็จ