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

如何解决?


当前回答

您可以从一个名为docker file和Dockerfile的文件构建docker映像。它有一组你在docker容器中需要的命令/指令。 下面的命令创建带有标签latest的图像,Dockerfile应该显示在该位置(。表示当前目录)

docker build . -t <image_name>:latest

如果Dockerfile不是默认文件名(Dockerfile),可以通过-f指定Dockerfile。 Sameple Docker文件内容。

FROM busybox
RUN echo "hello world"

其他回答

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

Docker build -t标签。

而不是

Docker构建。- t标签

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

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

只需要在命令的末尾加上一个空格。

例子:

命令:docker build -t "blink:v1"。

在这里你可以看到“blink:v1”然后一个空格然后点(.)

这是它。

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

Docker build -t my_image -f my_dockerfile

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

使用以下命令

docker build -t mytag .

注意mytag和dot之间有一个空格。这个点表示当前的工作目录。