首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gesse
V2EX  ›  程序员

请教一个关于 docker 的问题

  •  
  •   gesse · 2018-10-24 16:46:31 +08:00 · 918 次点击
    这是一个创建于 457 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我 exec 进入容器(得到的虚拟终端是 pts/1 ),运行了一个 python 命令,然后不小心把控制台终端关闭了

    我再打开一个控制台终端 exec 进入容器,得到的是另外一个虚拟终端 pts/2,如果我想再进入 pts/1 进行后续操作,用什么命令?
    8 回复  |  直到 2018-10-25 17:01:49 +08:00
    xiaoxinshiwo
        1
    xiaoxinshiwo   2018-10-24 17:41:42 +08:00
    xiaoxinshiwo
        2
    xiaoxinshiwo   2018-10-24 17:42:00 +08:00
    我跟你的咋不一样
    guader
        3
    guader   2018-10-24 17:46:25 +08:00
    docker attach ?
    alixali
        4
    alixali   2018-10-24 17:51:57 +08:00
    可以先看一下之前的容器还在不在,找一下容器 id,然后用楼上的命令。
    gesse
        5
    gesse   2018-10-25 10:33:44 +08:00
    @xiaoxinshiwo
    运行 /bin/bash 然后再 ps aux
    gesse
        6
    gesse   2018-10-25 10:34:13 +08:00
    @guader
    @alixali

    attach 是进入 pts/0 虚拟终端
    guader
        7
    guader   2018-10-25 16:49:38 +08:00
    @gesse 哦哦,如果你是想要继续在 pts/1 的环境下操作的话,可以试试重定向 pts 设备的标准输入输出。
    或者用下面这个办法:
    先开一个 bash 进程
    docker exec -ti xxx bash
    然后
    script -f /dev/pts/1
    然后你就可以在当前 pts 比如 pts/2 下面向 pts/1 发送命令了并获取输出了。
    不知道是不是这个意思哈?
    guader
        8
    guader   2018-10-25 17:01:49 +08:00
    @gesse 哎呀抱歉,这样应该也不行,仅仅是把当前 pts 的标准输出重定向过去了而已
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1896 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 26ms · UTC 13:39 · PVG 21:39 · LAX 05:39 · JFK 08:39
    ♥ Do have faith in what you're doing.