Docker:设置超时并退出,返回错误代码



如何使Docker容器在超时后退出并返回错误代码?

我有一个Dockerfile,它使用ubuntu映像,并将脚本文件从我的目录复制到映像,最后在容器中执行脚本。

FROM ubuntu
WORKDIR /usr/bin/
COPY ./example.py .
RUN chmod +x example.py
ENTRYPOINT ["python3", "example.py"]

然后我运行构建命令:

docker build -t demo .

运行容器:

docker run -it --rm demo

我不确定成功执行example.py脚本需要多长时间,但我想在1小时后退出容器。如果example.py脚本在1小时内成功执行,那么没关系,否则我想退出并返回错误代码。

您可以像这样使用timeout命令:

ENTRYPOINT ["timeout", "3600", "python3", "example.py"]

如果python3 example.py耗时超过1小时(3'600秒(,将返回错误(退出代码124(。

最新更新