Réponses:
Vous pouvez l'utiliser sans rien faire de spécial. Si vous avez une image locale appelée, blahvous pouvez le faire FROM blah. Si vous le faites FROM blahdans votre Dockerfile, mais ne pas avoir une image locale appelée blah, puis Docker va essayer de tirer à partir du Registre.
En d'autres termes, si un Dockerfile le fait FROM ubuntu, mais que vous avez une image locale appelée ubuntudifférente de l'image officielle, votre image la remplacera.
docker image list.
Vérifié: cela fonctionne bien dans Docker 1.7.0.
BTW, ne spécifiez pas --pull=truelors de l'exécution de la docker buildcommande:
si vous voulez utiliser l'image locale comme image de base, s'il vous plaît sans l'option
--pull=true,--pull=trueessaiera toujours d'extraire une version plus récente de l'image.
-caractère ( my-imagepar exemple) dans le nom, votre docker ne résoudra pas cette image localement, je ne sais pas pourquoi, de toute façon pour la réparer, n'utilisez tout simplement pas de -caractère, testé sur docker-compose 1.8 et docker 1.11
Docker version 17.06.2-ce, build cec0b72, mais assurez-vous que si vous avez tagué votre image, vous incluez la balise dans le cadre de la spécification de l'image (FROM localimage: tag).
Vous pouvez avoir - des caractères dans vos images. Supposons que vous ayez une image locale (pas un registre local) nommée centos-base-image avec la balise 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
Résultat
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
...
Dans l'exemple ci FROM- dessus , vous récupérez votre image locale, vous pouvez fournir des instructions supplémentaires pour récupérer une image de votre registre personnalisé (par exemple FROM localhost:5000/my-image:with.tag). Voir https://docs.docker.com/engine/reference/commandline/pull/#pull-from-a-different-registry et https://docs.docker.com/registry/#tldr
Enfin, si votre image n'est pas résolue lors de la fourniture d'un nom, essayez d' ajouter une balise à l'image lorsque vous la créez
En omettant une balise spécifique, le docker recherchera une image étiquetée «dernière», donc créez une image avec la balise: latest, ou modifiez votre FROM
N'oubliez pas de mettre non seulement la balise mais aussi le référentiel dans lequel se trouve cette balise, de cette façon:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
elixir 1.7-centos7_3 e15e6bf57262 20 hours ago 925MB
Vous devriez le référencer de cette façon:
elixir:1.7-centos7_3