Включен ли слой ИЗ ОТ изображения в мое изображение - PullRequest
1 голос
/ 22 марта 2019

У меня есть Dockerfile:

FROM baseimage

RUN <do stuff>

У меня есть baseimage локально, но он не доступен в Docker Hub.Я собираю myimage, используя Dockerfile выше, и помещаю myimage в Docker Hub.

Мой вопрос: myimage включает baseimage?

Также скажем, что другой пользователь тянет myimage.Он не имеет baseimage локально.Сможет ли он вытащить myimage успешно и запустить?

Фактическая проблема, с которой я сталкиваюсь, это попытка myimage завершиться неудачей для другого пользователя:

get https://registry-1.docker.io/v2/<BASEIMAGE>: unauthorized: incorrect username or password

Это несмотря на явное выполнениезаранее

docker login -u <USER> https://registry-1.docker.io/
Password: 
Login Succeeded
docker login https://registry-1.docker.io/v2/<ORG>/<BASEIMAGE>/manifests/<BASEIMAGE>
Authenticating with existing credentials...
Login Succeeded

Я думал, что для частных изображений все слои, включая baseimage, будут доступны в myimage.

1 Ответ

0 голосов
/ 22 марта 2019

Изображение - это просто стопка слоев.Если у вас есть FROM в файле Docker, процесс сборки запустит новое изображение, добавив слой поверх слоев из FROM изображения.

После того, как вы нажмете изображение, оно выдвинет всеслои для этого изображения включают слои из основного изображения.

Когда вы вытягиваете изображение, оно загружает все слои, отсутствующие локально, и манифест, объясняющий, как их складывать.

...