当前位置: 首页 > 面试题库 >

是否可以在正在运行的容器中启动Shell会话(不使用ssh)

凌联
2023-03-14
问题内容

我天真地希望此命令在正在运行的容器中运行bash shell:

docker run "id of running container" /bin/bash

似乎不可能,但出现错误:

2013/07/27 20:00:24 Internal server error: 404 trying to fetch remote history for 27d757283842

因此,如果我想在正在运行的容器中运行bash shell(例如,出于诊断目的)

我必须在其中运行SSH服务器并通过ssh登录吗?


问题答案:

编辑:现在您可以使用docker exec -it "id of running container" bash(doc)

以前,此问题的答案是:

如果确实需要并且您处于调试环境中,则可以执行以下操作:sudo lxc-attach -n <ID> 请注意,id必须为完整的ID(docker ps -notrunc)。

但是,我强烈建议不要这样做。

注意:-notrunc已弃用,--no-trunc很快将被替换。



 类似资料:
  • 我天真地期望此命令在运行的容器中运行bash shell: 看起来这是不可能的,我得到的错误: 因此,如果我想在运行的容器中运行bashshell(例如,用于诊断目的) 我必须在其中运行SSH服务器并通过ssh登录吗?

  • 问题内容: 要为Ubuntu映像启动交互式shell,我们可以运行: 但是,对于Alpine Docker映像运行此命令时,将得到以下结果: 在Alpine基本容器中启动交互式Shell的命令是什么? 问题答案: 上面使用的选项: 是BusyBox提供的Ash(Almquist Shell)。 退出时自动移除容器() 交互模式(即使未连接也保持STDIN打开) 分配伪TTY

  • 根据这个github问题,应该可以用Upstart、cron等和Docker0.6或更高版本启动一个完整的容器,但我该如何做呢? 我在期待 就像 我会得到一个登录屏幕,但它没有显示任何内容。我也尝试使用ssh访问它,但没有成功。我正在使用Docker索引中的默认ubuntu图像。

  • 我是Docker的新手,我想知道是否可以使用不同的参数多次运行一个应用程序。 我使用.NET开发了我的应用程序,到目前为止,我已经使用Ubuntu服务执行了所有实例,比如: 其中是启动服务时传递的参数,如:

  • 我有一个在主机上运行的docker容器,它是通过标准的“docker run…”命令启动的。它运行的网络是“directory_default”的默认名称,其中“director”是当前目录的名称。 我还有一个docker compose文件(在同一台主机上),它包含另一个容器定义,需要访问已经运行的容器。然而,当运行撰写文件时,我总是看到一个错误,指出网络无法访问。 读取无法链接到由docker

  • 问题内容: 查找进程aa.sh是否正在运行的linux命令是什么。ps命令似乎不起作用,并且不显示Shell脚本名称。 请指教。 问题答案: 检查一下