有可能吗?
这是我的游牧作业文件
job "test-job" {
...
group "test-group" {
driver = "docker"
config {
image = "<image-name>"
}
...
}
}
我知道可以通过Dockerfile的Docker构建将文件复制到docker镜像。但是我想避免显式地从' image -name‘镜像创建新的Docker镜像。
我还了解到,可以将文件复制到从Docker镜像派生的运行中的Docker容器。但由于我使用Nomad推出Docker镜像和填充容器,所以如果Nomad可以复制(通过复制文件即时创建新的Docker层),对我来说会很方便。
因此,我想知道这是否可能,以及如何实现?
发布于 2017-08-14 23:59:59
我不确定我是否理解了这个问题。
如果您正在尝试将docker镜像放到移动代理上,那么移动代理就可以运行它。Nomad会帮你做到这一点。
如果您试图在部署期间构建docker镜像之后将文件添加到docker镜像...,Nomad有几个选项。说大也大吧。
您可以使用卷(https://www.nomadproject.io/docs/drivers/docker.html#volumes)并挂载包含文件的目录。
或者,您也可以使用工件(https://www.nomadproject.io/docs/job-specification/artifact.html)并将其放入/local中(Nomad为您创建了这个文件夹),我相信默认情况下docker容器是公开的。
或者,一种不同的方式,只是在启动时让Docker容器去获取您需要的文件。很多人使用consul-template来实现这一点,它现在已经内置到了Nomad (https://www.nomadproject.io/docs/job-specification/template.html)中。
这些方法实际上都没有创建新的docker图像层,但是,没有办法在部署时创建新的docker图像层,这应该在构建时完成。
https://stackoverflow.com/questions/45372756
复制相似问题