【问题标题】:How run docker images without connect to Internet?如何在不连接互联网的情况下运行 docker 镜像?
【发布时间】:2020-05-06 00:20:34
【问题描述】:

我在没有连接到 Internet 的系统中安装了docker,因此要使用docker 运行映像,我必须从this 和另一个系统下载一个简单的映像。然后我把这张图片放到我离线系统的这个路径中:C:\Users\Public\Documents\Hyper-V\Virtual hard disks

但是当我在 cmd 中运行 docker run hello-world 时,我看到了这条消息:

Unable to find image 'hello-world:latest' locally

并尝试从 Internet 下载 hello-world 图像,但它没有连接到 Internet,因此它字段。现在我想知道我应该把我的图片放在哪里让 docker 可以看到?

【问题讨论】:

  • stackoverflow.com/questions/19234831/… answers 包含很多信息。可能您需要在forums.docker.com/t/where-are-images-stored/9794/11 上关注指示
  • 你在运行 docker 镜像时看到镜像了吗?如果没有,您需要使用 docker build 命令创建一个。
  • 不,首先我从 gidhub 下载它作为 zip 文件,但我不知道如何在另一个无法访问 Internet 的系统中使用它。我的目标是在我执行docker run {myImage}@Ajjo 时将它放在 docker 图像的目标路径中
  • 嗯!我不确定从 tar 或存档中制作图像。您为什么不尝试在可以访问 Internet 的机器上制作图像。然后使用 docker image save 创建一个 tar, docker image load 加载它并 docker run?请注意,我自己没有尝试过。只需参考文档即可。

标签: windows docker


【解决方案1】:

您可以通过从任何其他可以访问互联网的机器导出 docker 映像来轻松完成此操作,而无需弄乱文件夹:

  1. 在可以访问互联网的机器上拉取图像。

    $docker pull hello-world
    
  2. 将该图像保存为 .tar 文件。

    $ docker save --output hello-world.tar {your image name or ID}
    
  3. 将该文件复制到任何机器。

  4. 将 .tar 文件加载到 docker。

    $docker load --input hello-world.tar
    

查看: https://docs.docker.com/engine/reference/commandline/image_save/ https://docs.docker.com/engine/reference/commandline/load/#examples

【讨论】:

  • 当我执行docker save --output hello-world.tar {your image name or ID} 时,tar 文件将保存在哪里?我想要它在 Windows 中的路径? @Yasser
  • 运行要保存的命令,tar文件保存到当前工作目录。它的 docker 命令,因此它在 Linux 或 Windows 上的行为相同。
  • 谢谢!现在我可以在离线系统中运行任何图像@Yasser
  • 谢谢!非常有用。
  • 确实非常好!请注意,仅使用图像 ID,存储库和标签名称将被删除。见stackoverflow.com/questions/43957171/…
【解决方案2】:

您正在尝试使用 dockerfile 启动容器。您需要首先从 dockerfile 构建映像。您可以通过

docker build -t

在构建映像时需要互联网连接。

您可以使用

检查系统中的图像

泊坞窗图片

一旦你构建了 docker 镜像,你就可以在没有互联网连接的情况下启动容器

docker run

您还可以使用 docker save 和 docker load 功能导出相同的图像。

【讨论】:

  • 这个答案与提出的问题无关
  • 这是相关的。 OP 希望在没有互联网的系统上运行。他没有具体说明他必须在离线系统上完成所有操作。事实上,他的原始图像是从另一个系统中获取的。此解决方案是上述已接受答案的有效替代方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-05-30
  • 2012-03-18
  • 1970-01-01
  • 2016-10-06
  • 1970-01-01
  • 2017-04-09
  • 2018-01-31
相关资源
最近更新 更多