首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dockerfile 'FROM‘命令不执行行

Dockerfile 'FROM‘命令不执行行
EN

Stack Overflow用户
提问于 2018-01-08 15:26:18
回答 2查看 3K关注 0票数 0

然而,我正在构建一个Dockerfile,但是当我执行docker build时,它返回一个错误:

代码语言:javascript
复制
Error response from daemon: Dockerfile parse error line 7: FROM requires either one or three arguments

我的第7行命令是:

FROM nvidia-docker run -it gcr.io/tensorflow/tensorflow:latest-devel-gpu

我有点困惑为什么这个命令不能工作,因为我在bash中使用这个命令来构建我所需要的对接器(显然没有FROM命令)。

注意:我想要构建这个nvidia-docker run -it gcr.io/tensorflow/tensorflow:latest-devel-gpu的映像,并在该映像的基础上添加一些其他内容,这些内容已经包含在Dockerfile的后续行中。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-08 15:56:33

我想你对nvidia-码头的用法感到困惑:

nvidia本质上是一个围绕docker命令的包装器,它透明地为容器提供了在GPU上执行代码所需的组件。只有在使用nvidia-docker运行来执行使用GPU的容器时,才是绝对必要的。

因此,您要做的是在Dockerfile中运行一个命令。

我认为你想做的事情是:

代码语言:javascript
复制
FROM gcr.io/tensorflow/tensorflow:latest-devel-gpu
...

正如您所看到的,Dockerfile不包含对nvidia包装器的引用,因为它将用于运行容器,而不是构建映像。

然后使用nvidia包装器构建并运行映像:

代码语言:javascript
复制
docker build -t tensorflow .
nvidia-docker run -it tensorflow
票数 2
EN

Stack Overflow用户

发布于 2018-01-08 15:49:58

FROM关键字的用法如下:

代码语言:javascript
复制
FROM ImageName

nvidia-docker run -it gcr.io/tensorflow/tensorflow:latest-devel-gpu不是图像名称。你应该找到一个你想要开始的图像(名字),并把它放在那里。你拥有的是一个命令。

见docs:https://docs.docker.com/engine/reference/builder/#from

代码语言:javascript
复制
FROM <image> [AS <name>]
Or

FROM <image>[:<tag>] [AS <name>]
Or

FROM <image>[@<digest>] [AS <name>]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48153264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档