Почему в докере могут быть сокращены идентификаторы контейнеров, а не теги изображений, имена контейнеров или дайджесты изображений? - PullRequest
0 голосов
/ 07 декабря 2018

Учитывая, в репозитории у меня есть такая ситуация:

$  docker images
REPOSITORY                    TAG                  IMAGE ID            CREATED             SIZE
myrepo:5000/myimage           latest               1c3c75da38df        3 days ago          546MB
myrepo:5000/myimage           20181130-CET183709   1c3c75da38df        3 days ago          546MB
myrepo:5000/myimage           20181126-CET191306   b143d325cd0e        7 days ago          846MB
myrepo:5000/myimage           20181122-CET190934   ccf40fb5ec0f        11 days ago         746MB

И контейнер работает:

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
73d78cb7d34e        myrepo:5000/myimage "uwsgi --plugin http…"   3 minutes ago       Up 3 minutes        0.0.0.0:9090->8443/tcp   heuristic_noyce

Я могу сделать:

docker exec -ti 73d7 bash --login              # works - shortened container ID

но не:

docker exec -ti heuristic bash --login         # fails - shortened container name

docker exec -ti heuristic_noyce bash --login   # works - full container name

Я могу не вытащить образ докера с помощью сокращенного дайджеста, вот так:

docker pull myrepo:5000/myimage@sha256:b143d   # fails - shortened image ID (digest)

Вытащить образ докера с помощью укороченного тега также не удается:

docker pull myrepo:5000/myimage:20181126            # fails - shortened tag

docker pull myrepo:5000/myimage:20181126-CET191306  # works - complete tag

Почему бы не разрешить сокращения для всех этих?

Есть ли обходной путь?Я имею в виду, что я понимаю, что это не удалось, когда было два или более тега, начинающихся с 20181126, но в тех случаях, когда это однозначно?Где бы я мог сделать запрос на это?

...