正在按照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'.

如何解决?


当前回答

你需要在结尾加一个DOT…


例如:

$ docker build -t <your username>/node-web-app .

它有点隐蔽,但如果你注意。最后……

其他回答

您需要添加一个点,这意味着使用本地目录中的Dockerfile。

例如:

Docker build -t mytag。

这意味着你在本地目录中使用Dockerfile,如果你使用docker 1.5,你可以在其他地方指定Dockerfile。从docker build的帮助输出中提取:

-f,——file="" Dockerfile的名称(默认为'Dockerfile')

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

docker build –t simple-node .

替换为连字符/减号。

docker build -t simple-node .

是否从其他地方(网页或其他文件)复制了构建命令?试着从头输入。

我从AWS教程中复制了一个构建命令,并将其粘贴到我的终端,并得到了这个错误。我都快疯了。在用手输入之后,它工作了!仔细观察我之前失败的命令,我注意到“破折号”字符是不同的,它比我自己用“减号/破折号”键输入的字符更细,更长。

Bad:

Sudo docker build -t foo。

好:

Sudo docker build -t foo。

你能看出区别吗?复制粘贴很难。

下面的命令对我有用。Docker文件放在my-app-master文件夹中。

docker build -f my-app-master/Dockerfile -t my-app-master

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

Docker build -t标签。

而不是

Docker构建。- t标签