欢迎来到代码驿站!

当前位置:首页 >

解决docker容器启动后马上退出的问题

时间:2022-01-22 09:50:52|栏目:|点击:

最近在看docker如何让容器在启动时直接运行某些进程,后来发现Dockerfile可以在容器启动的时候指定容器运行命令。

CMD指定,但是每个Dockerfile只能有一条CMD指令,如果指定了多条CMD指定,只有最后一条会被执行。

于是就想了一个办法,在写了一个脚本,在脚本里面启动多个进程,在Dockerfile里运行这个脚本。

最后证明这个方法是可行的,在实验过程中遇到一个问题,容器启动后会马上停止。

经查阅资料:

Docker容器同时只能管理一个进程,如果这个进程退出那么容器也就退出了,但这不表示容器只能运行一个进程(其他进程可在后台运行),但是要使容器不退出必须有一个前台执行的进程。

解决方法:

脚本中最后一个进程一定要用前台运行方式即在进程最后不加&(&表示后台运行),否则容器会退出。

补充知识:在docker容器中使用gdbserver发生的问题及解决办法

在docker容器中使用gdbserver时遇到一个问题

linux_ptrace_test_ret_to_nx: Cannot PTRACE_TRACEME:operation not permmit

原因是Docker默认禁用PTRACE功能,需要在容器运行时开启。

docker run -ti --cap-add=SYS_PTRACE ubuntu

上一篇:React实现复杂搜索表单的展开收起功能

栏    目:

下一篇:docker 容器上编译 go 程序提示找不到文件问题

本文标题:解决docker容器启动后马上退出的问题

本文地址:http://www.codeinn.net/misctech/191030.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有