Odpowiedzi:
Możesz go używać bez robienia niczego specjalnego. Jeśli masz lokalny obraz o nazwie, blahmożesz to zrobić FROM blah. Jeśli robisz FROM blahw swoim Dockerfile, ale nie ma obrazu lokalnego nazwie blah, następnie Docker postara się wyciągnąć go z rejestru.
Innymi słowy, jeśli plik Dockerfile ma FROM ubuntu, ale masz lokalny obraz o nazwie ubunturóżny od oficjalnego, Twój obraz zastąpi go.
docker image list.
Zweryfikowano: działa dobrze w Docker 1.7.0.
BTW, nie określaj --pull=truepodczas uruchamiania docker buildpolecenia:
jeśli chcesz korzystać z lokalnego obrazu jako obrazu bazowego, proszę bez opcji
--pull=true,--pull=truezawsze będą próbować wyciągać nowszą wersję obrazu.
-znak ( my-imagena przykład) w nazwie, twój docker nie rozwiąże tego obrazu lokalnie, nie wiem dlaczego, i tak go naprawić, po prostu nie używaj -znaku, testowane na docker-compose 1.8 i
Docker version 17.06.2-ce, build cec0b72, ale upewnij się, że jeśli otagowałeś swój obraz, dołączasz tag jako część specyfikacji obrazu (FROM localimage: tag).
Możesz mieć - postacie na swoich obrazach. Załóżmy, że masz lokalny obraz (nie lokalny rejestr) o nazwie centos-base-image z tagiem 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
Wynik
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
...
W powyższym przykładzie FROMjest pobieranie obrazu lokalnego, możesz podać dodatkowe instrukcje pobierania obrazu z rejestru niestandardowego (np FROM localhost:5000/my-image:with.tag.). Zobacz https://docs.docker.com/engine/reference/commandline/pull/#pull-from-a-different-registry i https://docs.docker.com/registry/#tldr
Wreszcie, jeśli obraz nie jest rozwiązany podczas podawania nazwy, spróbuj dodać tag do obrazu podczas jego tworzenia
Pomijając określony tag, docker będzie szukał obrazu z tagiem „najnowszy”, więc albo utwórz obraz z tagiem: najnowsze lub zmień swój FROM
Pamiętaj, aby umieścić nie tylko tag, ale także repozytorium, w którym ten tag się znajduje, w ten sposób:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
elixir 1.7-centos7_3 e15e6bf57262 20 hours ago 925MB
Powinieneś odwołać się do tego w ten sposób:
elixir:1.7-centos7_3