正在按照docker网站上的说明构建docker映像。

https://docs.docker.com/examples/running_redis_service/

这是我得到的错误将遵循文档上的说明,并使用这个Dockerfile

FROM        ubuntu:14.04
RUN         apt-get update && apt-get install -y redis-server
EXPOSE      6379
ENTRYPOINT  ["/usr/bin/redis-server"]


sudo docker build -t myrepo/redis
docker: "build" requires 1 argument. See 'docker build --help'.

如何解决?


当前回答

#Using a file other than Dockerfile instead.
#Supose my file is `Dockerfile-dev`

docker build -t mytag - < Dockerfile-dev

其他回答

在旧版本的Docker中,似乎你需要使用这个顺序:

Docker build -t标签。

而不是

Docker构建。- t标签

我的问题是Dockerfile.txt需要转换为Unix可执行文件。一旦我这样做了,错误就消失了。

在这样做之前,你可能需要删除。txt部分,但在mac上,进入终端和cd到Dockerfile所在的目录和类型

chmod +x "Dockerfile"

然后它会将您的文件转换为Unix可执行文件,然后由Docker构建命令执行。

我在管道脚本中使用Docker与Jenkins管道时得到了这个错误。解决方案是在管道脚本中使用以下语法:

docker.build("[my_docker_image_tag]", "-f ./path/to/my/Dockerfile.jvm .")

在我的例子中,我使用了一个破折号(稍微长一点的连字符)符号——在t选项出现问题之前。

docker build –t simple-node .

替换为连字符/减号。

docker build -t simple-node .

如果有人在尝试标记-t图像时遇到这个问题,并且还从一个不命名为Dockerfile的文件构建它(即不是简单地使用Dockerfile)。Path),你可以这样做:

Docker build -t my_image -f my_dockerfile

注意,docker期望将目录作为参数,将文件名作为选项。