我有一个非常简单的 docker 文件,并且正在运行 docker 20.10.7:
FROM ubuntu:16.04
RUN apt-get update
COPY flag.txt /root/myflag.txt
我构建了图像:
$ sudo docker build -t one:1 .
并寻找图像:
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
one 1 4a12e8fa8a37 36 seconds ago 166MB
ubuntu 16.04 b6f507652425 3 months ago 135MB
现在我想运行它。在视频中像这样,看起来我可以通过名称来引用图像,如下所示:
$ sudo docker run -it --rm one
Unable to find image 'one:latest' locally
docker: Error response from daemon: pull access denied for one, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.
但这失败了,它只是不知道要寻找什么。我改为使用 id,它的工作原理是:
$ sudo docker run -it --rm 4a12e8fa8a37
但为什么我不能像我链接的视频中那样使用该名称?会容易很多
答案1
您需要构建不带标签的图像(:latest
将自动分配)
docker build -t one .
或使用您的特定标签运行它
docker run -it --rm one:1