为了账号安全,请及时绑定邮箱和手机立即绑定

如何用docker run命令执行脚本而不退出?

如何用docker run命令执行脚本而不退出?

摇曳的蔷薇 2018-10-04 15:11:12
如何用docker run命令执行脚本而不退出
查看完整描述

1 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

docker run指定的命令如果不是那些一直挂起的命令(比如运行top,不断echo),就是会自动退出的。-d命令是设置detach为true,根据官方的文档,意思是让这个命令在后台运行,但并不是一直运行(我们在一个正常的Linux Terminal中运行/bin/bash,运行完了也就完了,不会一直挂着等待响应的,所以确实没办法用daemon方式来跑/bin/bash)。
这个地方官方早期和现在的文档也确实有些前后不一致,现在是detach,早期的文档说指定-d以daemon方式来运行容器,可能存在一定的误解。
另外,如果你需要跑容器里的bash,直接运行docker run -i -t CONTAINER_NAME /bin/bash 就可以了,如果觉得参数比docker attach多,可以设置一个别名(alias)来解决:
alias dockerbash='docker run -i -t CONTAINER_ID /bin/bash'
设置好别名后,直接运行dockerbash就可以进入容器的bash了

查看完整回答
反对 回复 2018-10-26
  • 1 回答
  • 0 关注
  • 3044 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信