docker 查看容器内的目录

docker view directory within container

我正在尝试将一些文件从我的 docker 容器复制到我的本地主机,我阅读了执行此操作的文档

docker cp 'container':path/to/file dest/path 

但是这需要知道我要访问的容器内的路径和目录,如何查看容器的目录?我试过 docker diff 和 docker inspect 但这些没有显示容器的文件目录

您首先需要知道实例的名称运行?

$ docker ps

CONTAINER ID  IMAGE        COMMAND  CREATED  STATUS  PORTS  NAMES
36029...      image/image  ...      1 sec..  Up..    ...    some-container

现在,进入容器并寻找您需要的东西。假设容器名称是 some-image.

$ docker exec -it some-container /bin/bash

root@1f3420c939:/var/www/html#

如果您已经知道该文件夹:

docker exec -it some-container ls /path/to/file

编辑:

如@Konrad Botor 所述,也可以使用容器 ID 而不是容器名称,更重要的是并非所有图像都安装了 bash(alpine 是最受欢迎的图像,但未使用它)。

这里有一个 alpine 的例子:

docker run -d \
    --rm \
    --name my_alpine_container \
    alpine \
    sleep 3600

CONTAINER_ID=$( docker ps -q my_alpine_container )

# to "enter" the container:
docker exec -it $CONTAINER_ID sh

试试这个。

Copying files from host to Docker container

"docker ps" 找到容器的目录。