gpt4 book ai didi

docker - Docker:与Docker Import相反

转载 作者:行者123 更新时间:2023-12-02 18:22:28 24 4
gpt4 key购买 nike

使用docker import创建的图像无法运行,因为缺少必需的文件。

我正在尝试调试镜像中的内容以及缺少的内容。

我尝试过的

  • docker save创建一个tarball,但这不是一个包含文件而是所有元数据的简单tarball
  • docker export需要一个正在运行的容器。

  • 我还有其他选择吗?

    最佳答案

    如果镜像具有有效的 shell ,请使用该 shell 进行调试。

    docker run -ti BROKEN_IMAGE sh

    如果 shell 不起作用,请用 export图像内容,您将拥有一个tar文件,您可以将其提取到某处进行检查。
    CID=$(docker create BROKEN_IMAGE)
    docker export $CID | tar -tvf -

    详情
    docker import的源文件/数据应该是计划图像内容的tar文件。可以使用 tar命令在某处查看或提取此数据:
    $ CID=$(docker create busybox)
    $ docker export $CID > myimage.tar
    $ tar -tvf myimage.tar
    -rwxr-xr-x 0 0 0 0 28 Nov 01:03 .dockerenv
    drwxr-xr-x 0 0 0 0 1 Nov 22:58 bin/
    -rwxr-xr-x 0 0 0 1049688 1 Nov 22:58 bin/[
    -rwxr-xr-x 0 0 0 0 1 Nov 22:58 bin/[[ link to bin/[
    -rwxr-xr-x 0 0 0 0 1 Nov 22:58 bin/acpid link to bin/[
    ...

    如果文件/数据来自 docker save,则还有其他图层可以满足图像元数据和图层的需要。
    $ docker save busybox | tar -tvf -
    drwxr-xr-x 0 0 0 0 3 Nov 22:39 036a82c6d65f2fa43a13599661490be3fca1c3d6790814668d4e8c0213153b12/
    -rw-r--r-- 0 0 0 3 3 Nov 22:39 036a82c6d65f2fa43a13599661490be3fca1c3d6790814668d4e8c0213153b12/VERSION
    -rw-r--r-- 0 0 0 1174 3 Nov 22:39 036a82c6d65f2fa43a13599661490be3fca1c3d6790814668d4e8c0213153b12/json
    -rw-r--r-- 0 0 0 1337856 3 Nov 22:39 036a82c6d65f2fa43a13599661490be3fca1c3d6790814668d4e8c0213153b12/layer.tar
    -rw-r--r-- 0 0 0 1497 3 Nov 22:39 6ad733544a6317992a6fac4eb19fe1df577d4dec7529efec28a5bd0edad0fd30.json
    -rw-r--r-- 0 0 0 203 1 Jan 1970 manifest.json
    -rw-r--r-- 0 0 0 90 1 Jan 1970 repositories
    LAYER_ID/layer.tar文件包含每个图层内容,这些内容需要按照 Layersmanifest.json数组的顺序提取。
    $ cat manifest.json  | jq
    [
    {
    "Config": "6ad733544a6317992a6fac4eb19fe1df577d4dec7529efec28a5bd0edad0fd30.json",
    "RepoTags": [
    "busybox:latest"
    ],
    "Layers": [
    "036a82c6d65f2fa43a13599661490be3fca1c3d6790814668d4e8c0213153b12/layer.tar"
    ]
    }
    ]

    关于docker - Docker:与Docker Import相反,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47520943/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com