Se a sua imagem estiver marcada com mais de uma tag, então docker rmi
removerá a tag, mas não a imagem.
Então, no seu exemplo ...
# docker rmi my-imaj
... removerá essa tag e deixará a imagem presente com a outra tag correta.
Digamos que eu queira marcar uma imagem do Docker e criar um erro de digitação. Como faço para remover a tag sem remover a própria imagem? Nem as páginas de manual nem a documentação do Docker mencionam a remoção de tags.
docker tag 0e5574283393 my-imaj
docker tag 0e5574283393 my-image
# docker untag my-imaj # There is no "docker untag"!
Execute docker rmi REPOSITORY:TAG
para remover a tag.
Os valores REPOSITORY
e TAG
são provenientes de docker images
output.
Por exemplo
$ docker rmi my-image:0e5574283393
Untagged: my-image:0e5574283393
A partir de um repo docker vazio, importe uma imagem digitando:
#docker run hello-world
Execute o comando docker images
para listar as imagens. O resultado deve ser assim:
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 7bc42cc48a84 4 weeks ago 316MB
Agora vamos criar uma tag de imagem chamada v1 executando o comando docker tag
:
#docker tag hello-world:latest hello-world:v1
Se executarmos o comando docker images
, veremos nossa nova tag assim:
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 7bc42cc48a84 4 weeks ago 316MB
hello-world v1 7bc42cc48a84 4 weeks ago 316MB
Para excluir uma tag específica (para responder à pergunta original), execute o docker rmi hello-world:v1
, em que v1 é o nome da tag. A saída ficará assim:
#docker rmi hello-world:v1
Untagged: hello-world:v1
Execute o comando docker images
para listar as imagens. Observe que a tag de imagem foi removida:
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 7bc42cc48a84 4 weeks ago 316MB
Marque outra imagem com o nome da sua tag e, depois, a tag da sua imagem atual será removida.