如何检查已停止的 docker 容器文件

时间:2021-01-29 11:29:55

标签: docker docker-compose

第 1 步:

docker ps -a

container Id: dd5cf6b519b4

我需要检查无法启动的已停止的 docker 容器内部。

我试过 docker exec -it container-id bin/bash 但这是为了运行容器。

2 个答案:

答案 0 :(得分:1)

您可以使用特定入口点启动容器

docker run --entrypoint sleep YOUR_IMAGE 3600

它将阻塞当前终端 3600 秒。您可以打开新的终端选项卡(不要关闭当前选项卡),您可以验证您的容器是否正在使用

docker ps

如果不想阻塞当前终端,可以在 docker run 中添加 -d 标志:

docker run -d --entrypoint sleep YOUR_IMAGE 3600

上面的命令将启动 docker,它什么都不做,然后你可以在容器使用时通过 ssh 进入容器

docker exec -ti CONTAINER HASH sh

答案 1 :(得分:1)

docker ps -a

CONTAINER ID   IMAGE   COMMAND     CREATED         STATUS                    NAMES
0dfd54557799   ubuntu  "/bin/bash" 25 seconds ago  Exited (1) 4 seconds ago  peaceful_feynman

Commit the stopped image
docker commit 0dfd54557799 debug/ubuntu

now we have a new image
docker images list
REPOSITORY    TAG     IMAGE ID       CREATED         SIZE  
debug/ubuntu  <none>  cc9db32dcc2d   2 seconds ago   64.3MB

create a new container from the "broken" image
docker run -it --rm --entrypoint sh debug/ubuntu


inside of the container we can inspect - for example, the file system
ls /app    
App.dll
App.pdb
App.deps.json