docker ๋ช ๋ น์ด ๋ชจ์
์ธ ๋๋ง๋ค ๊น๋จน์ด์ ์ค๋ฌด์์ ์์ฃผ ์ฐ๋ ๋ช ๋ น์ด ์์ฃผ๋ก ํ ๋ฒ ์ ๋ฆฌํด๋ณด์๋ค.
๋ ์ง์คํธ๋ฆฌ ๋ก๊ทธ์ธ
๋ ์ง์คํธ๋ฆฌ ์ฃผ์๋ฅผ ๋๊ฒจ์ฃผ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ ๋ ์ง์คํธ๋ฆฌ์ธ Docker Hub์ ๋ก๊ทธ์ธ๋๋ค.
docker login
# Authenticating with existing credentials...
# Login Succeeded
# Logging in with your password grants your terminal complete access to your account.
# For better security, log in with a limited-privilege personal access token. Learn more at https://docs.docker.com/go/access-tokens/
[-u | --username]
๊ณผ [-p | --password]
์ต์
์ ์ฃผ๋ฉด ๋ฐ๋ก ๋ก๊ทธ์ธํ ์ ์๋ค.
docker login -u coodingpenguin -p **** my-registry.com
๋ ์ง์คํธ๋ฆฌ ์ฃผ์๋ฅผ ์ธ์๋ก ๋๊ฒจ์ฃผ๋ฉด ๋น๊ณต๊ฐ ๋ ์ง์คํธ๋ฆฌ์ ๋ก๊ทธ์ธํ ์ ์๋ค.
docker login my-registry.com
๋ ์ง์คํธ๋ฆฌ ๋ก๊ทธ์์
๋ ์ง์คํธ๋ฆฌ ์ฃผ์๋ฅผ ์ธ์๋ก ๋๊ฒจ์ฃผ๋ฉด ํด๋น ๋ ์ง์คํธ๋ฆฌ์์ ๋ก๊ทธ์์๋๋ค. ๋๊ฒจ์ฃผ์ง ์๋ ๊ฒฝ์ฐ ๊ธฐ๋ณธ ๋ ์ง์คํธ๋ฆฌ์ธ Docker Hub์์ ๋ก๊ทธ์์๋๋ค.
docker logout
# Removing login credentials for https://index.docker.io/v1/
์ด๋ฏธ์ง ๊ฒ์
docker search ubuntu
# NAME DESCRIPTION STARS OFFICIAL AUTOMATED
# ubuntu Ubuntu is a Debian-based Linux operating sysโฆ 15952 [OK]
# websphere-liberty WebSphere Liberty multi-architecture images โฆ 294 [OK]
# open-liberty Open Liberty multi-architecture images basedโฆ 59 [OK]
[-f | --filter]
๋ฅผ ์ฌ์ฉํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ํํฐ๋งํ ์ ์๋ค. ํ์ฌ ์ง์๋๋ ํํฐ๋ง์ ๋ค์๊ณผ ๊ฐ๋ค.
- stars(int): ์ด๋ฏธ์ง์ ์คํ ์
- is-automated(boolean): ์ด๋ฏธ์ง ์๋ ๋น๋ ์ฌ๋ถ
- is-official(boolean): Docker Hub์์ ์ธ์ฆํ ๊ณต์ ์ด๋ฏธ์ง ์ฌ๋ถ
docker search --filter stars=100 ubuntu
# NAME DESCRIPTION STARS OFFICIAL AUTOMATED
# ubuntu Ubuntu is a Debian-based Linux operating sysโฆ 15952 [OK]
# websphere-liberty WebSphere Liberty multi-architecture images โฆ 294 [OK]
# ubuntu-upstart DEPRECATED, as is Upstart (find other procesโฆ 114 [OK]
--no-trunc
์ต์
์ ์ฃผ๋ฉด ์๋ฆฐ DESCRIPTION์ ํ์ธํ ์ ์๋ค.
# NAME DESCRIPTION STARS OFFICIAL AUTOMATED
# ubuntu Ubuntu is a Debian-based Linux operating system based on free software. 15952 [OK]
# websphere-liberty WebSphere Liberty multi-architecture images based on Ubuntu 18.04 294 [OK]
# open-liberty Open Liberty multi-architecture images based on Ubuntu 18.04 59 [OK]
์ด๋ฏธ์ง ๋ค์ด๋ก๋
ํ๊ทธ๋ฅผ ๋ช ์ํ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก latest ํ๊ทธ์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์จ๋ค.
docker pull ubuntu # ubuntu:latest
# Using default tag: latest
# latest: Pulling from library/ubuntu
# 79d0ea7dc1a8: Pull complete
# Digest: sha256:dfd64a3b4296d8c9b62aa3309984f8620b98d87e47492599ee20739e8eb54fbf
# Status: Downloaded newer image for ubuntu:latest
# docker.io/library/ubuntu:latest
ํน์ ํ๊ทธ์ ์ด๋ฏธ์ง๊ฐ ํ์ํ๋ฉด ๊ผญ ๋ช ์ํด์ฃผ์.
docker pull ubuntu:18.04
# 18.04: Pulling from library/ubuntu
# 13f679bb266a: Pull complete
# Digest: sha256:8aa9c2798215f99544d1ce7439ea9c3a6dfd82de607da1cec3a8a2fae005931b
# Status: Downloaded newer image for ubuntu:18.04
# docker.io/library/ubuntu:18.04
๋ก์ปฌ ์ด๋ฏธ์ง ์กฐํ
docker images
# REPOSITORY TAG IMAGE ID CREATED SIZE
# coodingpenguin/welcome-to-docker v0.0.0 aaca33068baf About an hour ago 237MB
# welcome-to-docker latest aaca33068baf About an hour ago 237MB
# ubuntu latest 3f5ef9003cef 2 weeks ago 69.2MB
# coodingpenguin/ubuntu v0.0.0 3f5ef9003cef 2 weeks ago 69.2MB
# coodingpenguin/welcome-to-docker latest b1eb53af308a 3 weeks ago 13.6MB
# docker/welcome-to-docker latest b1eb53af308a 3 weeks ago 13.6MB
# ubuntu 18.04 c1adc1968c7b 2 months ago 56.7MB
ํน์ ๋ ํฌ์งํ ๋ฆฌ์ ์ด๋ฏธ์ง๋ ์กฐํ ๊ฐ๋ฅํ๋ฉฐ, ํ๊ทธ๊น์ง ์ผ์นํ๋ ์กฐํ๋ ๊ฐ๋ฅํ๋ค.
docker images ubuntu
# REPOSITORY TAG IMAGE ID CREATED SIZE
# ubuntu latest 3f5ef9003cef 2 weeks ago 69.2MB
# ubuntu 18.04 c1adc1968c7b 2 months ago 56.7MB
docker images ubuntu:latest
# REPOSITORY TAG IMAGE ID CREATED SIZE
# ubuntu latest 3f5ef9003cef 2 weeks ago 69.2MB
docker search์์ ์ ๊ณต๋ ํํฐ ์ต์
์ฒ๋ผ ํํฐ๋ฅผ ์ง์ํ๊ณ ์๋ค. (์์ธํ ๋ด์ฉ์ ์ฌ๊ธฐ๋ฅผ ์ฐธ๊ณ !)
์๋ฅผ ๋ค์ด, dangling=true
๋ฅผ ์ฃผ๋ฉด ํ๊ทธ๊ฐ ์๋ ์์ ์ด๋ฏธ์ง๋ฅผ ์กฐํํ ์ ์๋ค.
์ด๋ฏธ์ง ์ญ์
์ด๋ฏธ์ง ์ด๋ฆ + ํ๊ทธ์ ์กฐํฉ ํน์ ์ด๋ฏธ์ง ID๋ก ํน์ ์ด๋ฏธ์ง๋ฅผ ์ญ์ ํ ์ ์๋ค.
docker rmi ubuntu # ํ๊ทธ๊ฐ ์๋ ๊ฒฝ์ฐ latest ํ๊ทธ๋ฅผ ๊ฐ์ง ์ด๋ฏธ์ง๋ฅผ ์ญ์
docker rmi ubuntu:20.04 # ํ๊ทธ๊ฐ ์๋ ๊ฒฝ์ฐ ํด๋น ํ๊ทธ์ ์ด๋ฏธ์ง๋ฅผ ์ญ์
docker rmi 3048ba078595 # ์ด๋ฏธ์ง ID๋ก๋ ์ญ์ ๊ฐ๋ฅ
๋ฉ๋ชจ๋ฆฌ๋ง ์ฐจ์ง ํ๋ ๋๊ธ๋ง ์ด๋ฏธ์ง๋ฅผ ํ ๋ฒ์ ์ญ์ ํ๊ณ ์ถ๋ค๋ฉด, docker prune
์ ์ฌ์ฉํ์.
๐ก ๋๊ธ๋ง ์ด๋ฏธ์ง(Dangling Image)๊ฐ ๋ฌด์์ธ๊ฐ?
๋๊ธ๋ง ์ด๋ฏธ์ง๋ ์ด๋ฆ์ด ์๋ ์ด๋ฏธ์ง๋ฅผ ๋งํ๋ฉฐ, ๋น๋ํ๋ ๊ณผ์ ์์ ์๋ฌ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ ๋ถ์ฐ๋ฌผ์ฒ๋ผ ์์ฑ๋๋ค. ๋๊ธ๋ง ์ด๋ฏธ์ง๊ฐ ๋จ์ ์์ผ๋ฉด ๊ณต๊ฐ์ ์ฐจ์งํ๊ธฐ ๋๋ฌธ์ ๋ณดํต ์ฃผ๊ธฐ์ ์ผ๋ก ์ญ์ ํด์ค๋ค.
docker image prune
# WARNING! This will remove all dangling images.
# Are you sure you want to continue? [y/N] y
# Total reclaimed space: 0B
๋ ๋์๊ฐ ์ปจํ
์ด๋์์ ์ฌ์ฉํ์ง ์๋ ์ด๋ฏธ์ง๊น์ง ์ญ์ ํ๊ณ ์ถ๋ค๋ฉด [-a | --all]
์ต์
์ ์ถ๊ฐํ๋ค.
docker image prune -a
# WARNING! This will remove all images without at least one container associated to them.
# Are you sure you want to continue? [y/N] y
# Total reclaimed space: 0B
์ด๋ฏธ์ง ๋น๋
์ด๋ฏธ์ง ์ ๋ก๋
์ฐ์ ์ด๋ฏธ์ง๋ฅผ ์
๋ก๋ํ๊ธฐ ์ ์ ํ๊น
์ ํด์ผ ํ๋ค. ์๋๋ฉด Permission Denied๊ฐ ๋๋ค..
docker tag ubuntu coodingpenguin/ubuntu:v0.0.0
# docker images
# REPOSITORY TAG IMAGE ID CREATED SIZE
# coodingpenguin/ubuntu v0.0.0 3f5ef9003cef 2 weeks ago 69.2MB
# ubuntu 18.04 c1adc1968c7b 2 months ago 56.7MB
๊ทธ ๋ค์์ ํ๊น ๋ ์ด๋ฏธ์ง๋ฅผ ์ ๋ก๋ํด์ค๋ค.
docker push coodingpenguin/ubuntu:v0.0.0
# The push refers to repository [docker.io/coodingpenguin/ubuntu]
# b49483f6a0e6: Mounted from library/ubuntu
# v0.0.0: digest: sha256:9b85f48f0298ec89dcbc46b35edf9b12e5b9b04ca9cc9ea063968933ddba6adf size: 529