Docker容器

【Tip】Docker Run让容器在后台一直运行不立刻退出

本文主要是介绍【Tip】Docker Run让容器在后台一直运行不立刻退出,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

很多时候我们需要让docker run一直在后台运行着,比如ubuntu:latest,然后exec做点事情;该怎么办呢?

很简单也很复杂。遇到像helloworld这样的image是完全没有办法的,人家用C编译的程序直接调用syscall显示helloworld;所以这种image是没有办法直接spin在那里的,run一下就退出。必须从代码层面来个 while (1) sleep(1); (详见 最小自旋容器)

如果一个container可以开shell,那什么都好办,就是 docker run -d <image> sh -c 'while true; do sleep 1; done 就可以让一个没有CMD的image启动的container在后台运行了,下面就是 docker exec -it <container_id> sh 去里面做事情了。当然,shell种类很多,bash, zsh, …

这篇关于【Tip】Docker Run让容器在后台一直运行不立刻退出的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!