2016-09-27 2 views
4

В docker, как можно отобразить текущую информацию о реестре, которую вы в настоящее время вошли? Я установил докер, если теперь я сделаю докеры, куда он отправит мои изображения?Docker показать текущий реестр

Я трачу более 30 минут на поиск этой информации у Google и докеров, и ее не удалось найти, поэтому я считаю, что она заслуживает собственного вопроса.

ответ

6

Нет понятия «текущего» реестра - полные теги изображений всегда содержат адрес реестра, но если реестр не указан, то Docker Hub используется по умолчанию.

So docker push user/app подталкивает к докер-хабу. Если вы хотите, чтобы подтолкнуть его к локальному реестру, вы должны явно пометить его с адресом реестра:

docker tag user/app localhost:5000/user/app 
docker push localhost:5000/user/app 

Если локальный реестр защищен, необходимо запустить docker login localhost:5000но это не меняет реестр по умолчанию , Если вы нажимаете или тянете изображения без адреса реестра в теге, Docker всегда будет использовать концентратор.

This issue объясняет обоснование.

+0

Ощущается довольно хороший ответ. Могу ли я потянуть изображение таким же образом? Если я хочу использовать частный реестр (локальный или внешний), мне нужно сначала войти в систему, а затем убедиться, что тег изображения содержит частный реестр, а затем нажмите его? –

+1

Да, точно. Скажите, что вам нужен собственный образ Ubuntu: 'docker pull ubuntu' получает официальное изображение от концентратора; 'docker tag ubuntu localhost: 5000/bases/ubuntu' указывает его для локального реестра; 'docker push localhost: 5000/bases/ubuntu' толкает его локально. Затем вы выставляете «docker pull localhost: 5000/bases/ubuntu» или используете его в Dockerfiles: «FROM localhost: 5000/bases/ubuntu» –

2

Работа с изображениями докеров не является очевидной, но ее легко объяснить.

Адрес, в котором будут отправляться ваши изображения, должен быть указан в имени изображения. Когда вы фиксируете изображение, вы должны называть его [registry-IP]: [registry-port]/[imagepath]/[image-name]

Если у вас уже есть изображение, и вы хотите отправить его на локальный реестр вы должны помечать его включая путь реестра перед ее:

докер тег [изображение-имя] [реестр-IP]: [реестр-порт]/[изображения] название

докер нажмите [ registry-IP]: [реестр-порт]/[имя-изображения]