开发者社区 > 云原生 > 容器服务 > 正文

如何将Docker-ubuntu容器启动到bash中?

如何将Docker-ubuntu容器启动到bash中?

展开
收起
游客5k6m7fein3w74 2021-10-21 14:44:44 1666 0
1 条回答
写回答
取消 提交回答
  • 首先,容器不是虚拟机。容器是用于运行进程的隔离环境。容器的生命周期与内部运行的进程绑定在一起。当进程退出时,容器也退出,隔离环境也消失了。的“附加到容器”或“进入容器”,其实就是你走的隔离环境中的意义 正在运行的进程 ,因此,如果你的进程已经退出,你的容器也已退出,因此没有容器为你attach或enter。所以的命令docker attach,docker exec是在目标 上运行 的容器。

    在docker run中进行配置Dockerfile并内置到Docker映像中时,将启动哪个进程。以image ubuntu为例,如果您运行docker inspect ubuntu,则会在输出中找到以下配置:

    "Cmd": ["/bin/bash"] 这意味着该进程是在运行时启动docker run ubuntu的/bin/bash,但是您没有处于交互模式,也没有向其分配tty,因此该进程立即退出,容器退出。这就是为什么您无法再次输入容器的原因。

    要启动容器并输入bash,请尝试:

    docker run -it ubuntu 然后,您将被带入容器外壳。如果您打开另一个终端,并且docker ps,您会发现该容器正在运行,您可以docker attach对其进行操作或docker exec -it <container_id> bash再次输入它。

    2021-10-21 15:06:12
    赞同 展开评论 打赏

国内唯一 Forrester 公共云容器平台领导者象限。

相关电子书

更多
应用 Docker 进行持续交付:用技术改变交付路程 立即下载
从Docker到容器服务 立即下载
Docker@Alibaba——超大规模Docker化的实战经验 立即下载