שאלה כיצד להסיר תג תמונה ב- Docker מבלי להסיר את התמונה עצמה?


נניח שאני רוצה לתייג תמונה של מעגן, ולעשות שגיאת הקלדה. כיצד ניתן להסיר את התג מבלי להסיר את התמונה עצמה? לא מסמכי manpages ולא תיעוד Docker מציינים הסרת תגים.

docker tag 0e5574283393 my-imaj
docker tag 0e5574283393 my-image
# docker untag my-imaj # There is no "docker untag"!

95
2017-07-03 12:10




עבור אלה שרוצים untag <none>תמונות מדומות כמו foo/bar:<none>: להשתמש docker images --digests ו docker rmi foo/bar@<digest> כפי שתואר ב success.docker.com/KBase/... - Janaka Bandara


תשובות:


אם התמונה שלך מתויגת עם יותר מתג אחד, לאחר מכן docker rmi תסיר את התג, אך לא את התמונה.

אז בדוגמה שלך ...

# docker rmi my-imaj

... תסיר את התג ולהשאיר את התמונה הנוכחית עם התג הנכון השני.


135
2017-07-03 12:42



תודה. הלוואי שהם הזכירו את זה בתיעוד: - / - Mihai
איך אני מסיר את התמונה באמצעות התג? :) - Alexander Mills
אם התג שאני מסיר הוא התג האחרון, התמונה תוסר. אז אני תוהה מה התשובה לשאלה בנושא? כיצד ניתן להסיר את התג ולשמור את הקובץ במטמון? - kub1x
התרחיש שלי הוא תמונה אחת עם תג: 1) הסר את התג מהתמונה, אך שמור את התמונה במטמון, ללא תגים. 2) הפעלה docker build עם תג זהה, אבל אולי שונה Dockerfile. 3 א) אם Dockerfile לא השתנה, התמונה במטמון מתויגת בחזרה עם אותו תג. 3b) אם Dockerfile השתנה, התמונה החדשה מתויגת עם התג המקורי והתמונה הישנה תוסר docker image prune. - kub1x
והתשובה היא תמיד להשתמש --help, אל תהיה עצלן לקרוא. docker image remove --no-prune.. למקרה שמישהו מעוניין. - kub1x


הפעלה docker rmi REPOSITORY:TAG כדי להסיר את התג.

ה REPOSITORY ו TAG ערכים באים docker images פלט.

לדוגמה

$ docker rmi my-image:0e5574283393
Untagged: my-image:0e5574283393

12
2017-07-03 12:35



blog.tmtk.net/2013/09/16/how_to_remove_tag_on_docker.html. זה עשוי לספק לך עזרה נוספת - ashishjain


החל מ ריפו ריק מעגן, לייבא תמונה על ידי הקלדת:

#docker run hello-world

הפעל את docker images הפקודה לרשום את התמונות. התוצאה צריכה להיראות כך:

REPOSITORY        TAG           IMAGE ID          CREATED           SIZE
hello-world       latest        7bc42cc48a84      4 weeks ago       316MB

עכשיו בואו ליצור תג תמונה שנקרא v1 על ידי הפעלת docker tag פקודה:

#docker tag hello-world:latest hello-world:v1

אם נריץ את docker images אנו נראה את התג החדש שלנו כך:

REPOSITORY        TAG           IMAGE ID          CREATED           SIZE
hello-world       latest        7bc42cc48a84      4 weeks ago       316MB
hello-world         v1          7bc42cc48a84      4 weeks ago       316MB

כדי למחוק תג ספציפי (כדי לענות על השאלה המקורית), הפעל את ה- rmi של המעגן hello-world:v1 איפה v1 הוא שם התג. הפלט ייראה כך:

#docker rmi hello-world:v1
Untagged: hello-world:v1

הפעל את docker images הפקודה לרשום את התמונות. שים לב שתג התמונה הוסר:

REPOSITORY        TAG           IMAGE ID          CREATED           SIZE
hello-world       latest        7bc42cc48a84      4 weeks ago       316MB

4
2018-05-12 16:01



הגישה המעורפלת פחות, אם כי כעבור 3 שנים. +1 - bvj


תג תמונה אחרת עם שם תג ולאחר מכן התג שלך מהתמונה הנוכחית שלך יוסר.


0
2017-10-05 15:35



ברוכים הבאים ל- ServerFault! נא להבהיר או להוסיף כמה צעדים לדוגמה. בדוק את המדריך כאן: serverfault.com/help/how-to-answer - Cory Knutson