shylockhg
V2EX  ›  问与答

docker image 里面没有 shell 的时候怎么查看文件内容?

  •  
  •   shylockhg · Nov 20, 2018 · 3786 views
    This topic created in 2794 days ago, the information mentioned may be changed or developed.
    15 replies    2018-11-21 13:22:21 +08:00
    sarices
        1
    sarices  
       Nov 20, 2018
    添加一个再启动
    Hyponet
        2
    Hyponet  
       Nov 20, 2018
    启动之后 docker cp,可以把文件复制出来,容器不是虚拟机,文件依然在宿主机里
    momocraft
        3
    momocraft  
       Nov 20, 2018
    docker inspect 可以看到 container / image 在 host 中的路径 (但是不分层,最方便的方法可能仍然是容器内的 shell)
    shylockhg
        4
    shylockhg  
    OP
       Nov 20, 2018
    @sarices 太麻烦
    justicelove
        5
    justicelove  
       Nov 20, 2018
    docker exec -it container bash
    boris1993
        6
    boris1993  
       Nov 20, 2018 via Android   ❤️ 1
    @justicelove #5 容器不一定装了 bash 的,用 sh 更保险一点
    boris1993
        7
    boris1993  
       Nov 20, 2018 via Android
    至少......应该有个 /bin/sh 吧......
    realityone
        8
    realityone  
       Nov 20, 2018   ❤️ 1
    docker create
    docker export
    shylockhg
        9
    shylockhg  
    OP
       Nov 20, 2018
    @boris1993 很多生产容器就一个进程加配置
    shylockhg
        10
    shylockhg  
    OP
       Nov 20, 2018
    @justicelove 只有一个服务进程
    shylockhg
        11
    shylockhg  
    OP
       Nov 20, 2018
    @realityone 这个有用
    nonkr
        12
    nonkr  
       Nov 20, 2018 via iPhone
    虽然只有一个服务进程,但一般 /bin/sh 还是有的
    devtk
        13
    devtk  
       Nov 21, 2018
    有很多方法,最容易的方法就是 在制作 container 的时候加入-v 参数 将本地路径与容器内部路径做映射。然后就可以在宿主机上直接查看容器内部文件了。当然如果你不嫌麻烦可以用 docker cp 也行的
    shylockhg
        14
    shylockhg  
    OP
       Nov 21, 2018
    @kios 这个也可以,居然忘了 cp。。
    devtk
        15
    devtk  
       Nov 21, 2018
    @shylockhg 还是推荐你用映射
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5350 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 61ms · UTC 05:52 · PVG 13:52 · LAX 22:52 · JFK 01:52
    ♥ Do have faith in what you're doing.