Что такое <none> репозиторий и теги? Почему они появляются, когда я использую сборку докеров?

Это то, что показывает docker images, прежде чем я запустил docker build.

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
myapp               latest              a38da0bd9e0b        6 seconds ago       523.8 MB
golang              onbuild             b4997c557048        10 days ago         517.2 MB

После внесения некоторых изменений в исходный код myapp, я запускаю docker build -t myapp ., и в итоге получаю изображения с именем <none>.

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED                      VIRTUAL SIZE
myapp               latest              a38da0bd9e0b        Less than a second ago ago   523.8 MB
<none>              <none>              e4209f97e819        10 minutes ago               523.8 MB
golang              onbuild             b4997c557048        10 days ago                  517.2 MB

Я знаю, что могу удалить их с помощью docker rmi <IMAGE ID>, но почему это происходит в первую очередь? Как я могу предотвратить это? Я создаю Dockerfile.

FROM golang:onbuild
EXPOSE 8080

Ответы

Ответ 1

Если вы переназначите тег или имя изображения на другое изображение, ваше изображение потеряет свой тег или имя. Это действительно так просто. Ваш myapp образ репо с тегами latest с идентификатором a38da0bd9e0b используется для именования и помечен идентификатором изображения e4209f97e819.