如何从本地docker镜像游牧的工作

时间:2019-05-28 12:43:11

标签: docker nomad

游牧者Docker映像将从Docker Hub提取,但是我想使用一些本地映像,如何使用主题(我不想使用私有仓库)

示例我要使用本地图像test


> docker images
REPOSITORY                         TAG                 IMAGE ID            CREATED             SIZE
test                        latest              da795ca8a32f        36 minutes ago      567MB
job "test" {
  datacenters = ["dc1"]

  group "example" {
    task "test" {
      driver = "docker"

      config {
        image = "test"
      }

      resources {
        cpu = 500
        memory = 256 
      }
    }
  }
}

错了!

3 个答案:

答案 0 :(得分:2)

我不确定这是否可以被视为答案或“黑客”。

但如果你想游牧到已经存在的图片不得标记最新的节点上使用的码头工人的形象。

为了测试,我将我的图片标记为 IMAGE:local。这样 Nomad 使用它(如果存在),如果不存在则从远程拉取它。

答案 1 :(得分:0)

查看Nomad的源代码herehere,似乎不支持使用计算机本地映像。这将是有道理的,因为在具有多个节点的集群环境中,调度程序需要能够获取映像,而与作业分配到哪台计算机无关。

(一种可能的解决方法是在Nomad群集中运行注册表服务,并使用whichever storage backend对您来说最方便)

答案 2 :(得分:0)

现在是游牧民族supports tar docker图像。

这是一个例子

artifact {
  source = "http://path.to/redis.tar"
}
config {
  load = "redis.tar"
  image = "redis"
}

但是,焦油尺寸可能太大而无法弹性地运输和供应。

相关问题