ฉันมีสคริปต์ทุบตีซึ่งเพียงนักเทียบท่าดันภาพ:
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
คำสั่งจะถูกป้อนเฉพาะในกรณีที่คำสั่งนักเทียบท่าประสบความสำเร็จ