如何正确指定** FROM **值为我的本地映像而不是Docker Hub注册表?

时间:2016-09-05 10:17:57

标签: docker neo4j

我想从本地计算机上的现有图像构建新图像。这就是我的上下文。 neo4j 是我正在使用的数据库/图像。

neo4j
|-data
|-plugins
|-Dockerfile

Dockerfile的内容如下所示

FROM "C:\neo4j"

当我docker build .时,我得到以下内容:

$ docker build .
Sending build context to Docker daemon 435.2 MB
Step 1 : FROM "C:\neo4j"
Error parsing reference: "\"C:\\neo4j\"" is not a valid repository/tag

如何正确指定 FROM 值为本地图像而不是Docker Hub注册表?

1 个答案:

答案 0 :(得分:1)

FROM要求映像位于注册表(公共或私有)或docker主机的本地缓存中。

但是,您可以指定FROM: scratch执行它所说的内容;它不会依赖任何其他基本图像。容器只包含Dockerfile列出的内容。

此外,您无法引用Dockerfile所在的当前目录之外的文件。这是因为包含Dockerfile的整个目录被复制到Docker文件中,并在那里构建。创建.dockerignore文件以列出构建图像所不需要的内容。它会加速建筑物,因为它们不会被复制到主机进行构建步骤。