Respostas:
Você pode usá-lo sem fazer nada de especial. Se você tem uma imagem local chamada, blahvocê pode fazer FROM blah. Se você fizer FROM blahem sua Dockerfile, mas não têm uma imagem local chamado blah, em seguida, Docker vai tentar retirá-lo do registro.
Em outras palavras, se um Dockerfile tiver FROM ubuntu, mas você tiver uma imagem local chamada ubuntudiferente da oficial, sua imagem a substituirá.
docker image list.
Verificado: funciona bem no Docker 1.7.0.
BTW, não especifique --pull=trueao executar o docker buildcomando:
se você quiser usar a imagem local como imagem de base, sem a opção
--pull=true,--pull=truesempre tentará obter uma versão mais recente da imagem.
-caractere ( my-imagepor exemplo) no nome, sua janela de encaixe não a resolverá localmente, não sei por que, de qualquer maneira, para corrigi-la, simplesmente não use -caracteres, testados no docker-compose 1.8 e docker 1.11
Docker version 17.06.2-ce, build cec0b72, mas verifique se você etiquetou sua imagem e incluiu a tag como parte da especificação da imagem (FROM localimage: tag).
Você pode ter - caracteres em suas imagens. Suponha que você tenha uma imagem local (não um registro local) chamada centos-base-image com a tag 7.3.1611.
docker version
Client:
Version: 1.12.6
API version: 1.24
Package version: docker-common-1.12.6-16.el7.centos.x86_64
Go version: go1.7.4
Server:
Version: 1.12.6
API version: 1.24
Package version: docker-common-1.12.6-16.el7.centos.x86_64
Go version: go1.7.4
docker images
REPOSITORY TAG
centos-base-image 7.3.1611
Dockerfile
FROM centos-base-image:7.3.1611
RUN yum -y install epel-release libaio bc flex
Resultado
Sending build context to Docker daemon 315.9 MB
Step 1 : FROM centos-base-image:7.3.1611
---> c4d84e86782e
Step 2 : RUN yum -y install epel-release libaio bc flex
---> Running in 36d8abd0dad9
...
No exemplo acima, FROMestá buscando sua imagem local, você pode fornecer instruções adicionais para buscar uma imagem do seu registro personalizado (por exemplo FROM localhost:5000/my-image:with.tag). Consulte https://docs.docker.com/engine/reference/commandline/pull/#pull-from-a-different-registry e https://docs.docker.com/registry/#tldr
Por fim, se sua imagem não estiver sendo resolvida ao fornecer um nome, tente adicionar uma tag à imagem ao criá-la
Este segmento do GitHub descreve um problema semelhante de não encontrar imagens locais por nome .
Ao omitir uma tag específica, o docker procurará uma imagem com a tag "mais recente"; portanto, crie uma imagem com a tag: latest ou altere seu FROM
Lembre-se de colocar não apenas a tag, mas também o repositório em que ela está, desta maneira:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
elixir 1.7-centos7_3 e15e6bf57262 20 hours ago 925MB
Você deve referenciá-lo desta maneira:
elixir:1.7-centos7_3