我有一个 bash 脚本,它只是 docker 推送一个图像:
docker push $CONTAINER_IMAGE:latest
当失败时我想循环3次。我应该如何实现这个目标?
答案1
使用for-loop
和&& break
:
for n in {1..3}; do
docker push $CONTAINER_IMAGE:latest && break;
done
break
退出循环,但仅在docker push
成功时运行。如果docker push
失败,它将错误退出并继续循环。
答案2
您还可以使用:
for n in {1..4}; do
if docker push $CONTAINER_IMAGE:latest
then
break;
fi
done
then
仅当 docker 命令成功时才会输入该语句。