设置Docker Container的最长生命周期?

ami*_*mil 3 docker devops docker-engine

是否有可能启动Docker容器(在CMD中使用某些命令)并确保它不会停留超过指定的时间段?

例如,我有一个Ubuntu容器,我想启动它,执行一些命令并在最后退出(杀死容器).但是这些命令可能包含无限循环或者可能只持续很长时间,所以我想确保Docker容器在指定的时间后自动被杀死.

Far*_*ahi 7

快速解决方法:

docker run -d --name busybox busybox:1.26.2-glibc  sleep 25; sleep 10; docker rm -f busybox
Run Code Online (Sandbox Code Playgroud)

说明:

我正在运行一个busybox容器并将其命名为busybox.在容器中我正在运行sleep 25命令,因此容器将存活25秒.但我希望超时并在10秒内删除容器.

另一种形式的解决方法:

timeout --signal=SIGKILL 5 docker run --rm -it busybox:1.26.2-glibc /bin/sh
Run Code Online (Sandbox Code Playgroud)

不幸的是,docker没有提供17.09.0-ce之类的功能.这是功能提案.