Docker在哪里存储运行容器的内容?

Edw*_*ard 6 filesystems directory-browsing docker

有没有办法浏览在正在运行的容器中创建的文件?

假设我正在使用容器

sudo docker run --name myContainer -d ubuntu
Run Code Online (Sandbox Code Playgroud)

哪个有ID eefea5f7df52e8c1aad24b4068564237021dc7b953026f0adb696878a3d25f72

我以为在某个地方创建了一个文件夹(带有容器ID的名称)/var/lib/docker/,其中包含创建的文件,...

我发现了几个文件夹/var/lib/docker/aufs/diff(删除容器时也会删除它们),但我不知道如何将它们映射到容器ID.

Bas*_*ord 5

我不确定你为什么想知道这一点,但这是可能的。

使用docker inspect,您可以了解有关容器内部结构的更多信息。尝试发出docker inspect eefea5f7df52e8c1aad24b4068564237021dc7b953026f0adb696878a3d25f72以查看有关容器的完整信息树。

我相信docker inspect --format='{{.GraphDriver.Data.LowerDir}}' eefea5f7df52e8c1aad24b4068564237021dc7b953026f0adb696878a3d25f72为您提供了存储容器数据的路径。不过,您需要 root 访问权限才能打开该文件夹,这是有充分理由的,因为尝试更改那里的数据不是一个好主意!