是否可以在出错时创建新容器?

问题描述

快速问题:是否可以在出错时创建新容器?我知道当一个容器退出时,我们可以重新启动它(给定正确的参数),但我想重新创建而不是重新启动,因为我不想保持容器上的状态。 任何帮助表示赞赏。 谢谢!

解决方法

基本上,当您运行 docker 镜像时,它会运行到 docker 容器中。这是一种抽象。因此,如果您想重新创建容器,则只需再次运行映像即可。

要运行容器,您只需提供它使用的映像:docker run <docker_image>

需要记住的一点是,如果您使用相同的 docker 镜像创建多个 docker 容器,那么它们的功能都相同,因此,如果您想要不同的功能,则需要创建新的 docker 镜像,然后运行该镜像。

,

这可能并不理想,但您可以将 docker 容器设置为 --restart=no 并将外部 cron 作业设置为运行以下内容:

docker inspect --format '{{json .State.Running}}' container-name

如果返回 false,请手动运行命令以重新创建容器,例如:

docker-compose rm container-name
docker-compose up -d container-name