Docker image๋ Container runtime์ ํ์ํ ๋ฐ์ด๋๋ฆฌ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ์ค์ ๊ฐ ๋ฑ์ ํฌํจํ๊ณ
๋ณ๊ฒฝ๋๋ ์ํ ๊ฐ์ ๋ณด์ ํ์ง ์๊ณ (stateless)
๋ณํ์ง ์๋๋ค.(Immutable, Read Only)
Docker image ๊ด๋ จ ๋ช ๋ น์ด workflow
์ด๋ฏธ์ง ๋ด๋ ค๋ฐ๊ธฐ
docker pull [options] name:[tag]
๋ง์ฝ docker pull busybox ๋ผ๋ ๋ช ๋ น์ด๋ฅผ ์น๋ค๋ฉด tag๋ ๊ธฐ๋ณธ์ ์ผ๋ก latest, ๊ฒฝ๋ก๋ docker.io/library ๋ก ์ค์ ๋๋ค.
์ฆ ๊ธฐ๋ณธ์ ์ผ๋ก docker.io๊ฐ default registry๋ก ๋ฑ๋ก๋์ด ์๋ค.
์ด๋ฏธ์ง์ ๊ตฌ์กฐ ํ์ธ
- ์ด๋ฏธ์ง๋ layer ๊ตฌ์กฐ์ด๋ค.
- ๋งจ ์์์ ๋งํ๋์ ์ด๋ฏธ์ง๋ ๋ถ๋ณ ์ฆ, read only ํํ๋ก ๋ง๋ค์ด์ง๋ค
- ๊ทธ๋ ๋ค๋ฉด ๋ค์ด๋ฐ์ base image๋ ์ด๋ป๊ฒ ๋ด๋ง๋๋ก ๋ฐ๊ฟ ์ ์์๊น?
- ๋ฐ๋ก ์ปจํ ์ด๋๋ฅผ ์์ฑํด์ ๋ณ๊ฒฝํ ์ ์๋ค.
- ์๋ก ๋ณ๊ฒฝ๋ ๋ด์ฉ์ ์๋ก์ด layer๊ฐ ์ฌ๋ผ๊ฐ๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
์ด๋ฏธ์ง PUSH
- ๋ณธ์ธ ๊ณ์ ์ Repository์ ์์ฑํ ์ด๋ฏธ์ง๋ฅผ ์ ๋ก๋ํ๊ธฐ ์ํด์๋ ๋ณธ์ธ ๊ณ์ ์ ์ด๋ฏธ์ง๋ช ์์ ๋ถ์ฌ์ผ ํ๋ค. ๊ทธ๋์ผ docker push ์ํ ์ ๊ณ์ ์ผ๋ก ์ฐพ์๊ฐ ์ ์ฅ๋จ.
- ์ ์ฅ์์ ์ ์ฅํ ์ด๋ฏธ์ง ์๋ก ์์ฑ
docker image tag {์ด๋ฏธ์ง๋ช
}:{ํ๊ทธ} {๊ณ์ }/{์ด๋ฏธ์ง๋ช
}:{ํ๊ทธ}
- ์ด๋ฏธ์ง๋ฅผ ์ ์ฅ์์ push
docker push {์ด๋ฏธ์ง๋ช
}:{ํ๊ทธ}
'Docker ๐' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Docker] ๋์ปค ๋ณผ๋ฅจ ์ดํด์ Bind mount, docker volume ๋ฐฉ์์ ๋ณผ๋ฅจ ๊ธฐ๋ฒ | MySQL volume ์ฐ๊ฒฐ, Nginx volume ์ฐ๊ฒฐ (0) | 2023.09.13 |
---|---|
[Docker] ๋์ปค DNS์ ์ปจํ ์ด๋ proxy(Nginx) (0) | 2023.09.10 |
[Docker] GUI ์ปจํ ์ด๋ ๊ด๋ฆฌ ๋๊ตฌ, Portainer (0) | 2023.09.10 |
[Docker] Nginx๋ฅผ ํตํ ๊ธฐ์ (0) | 2023.09.08 |
[Docker] docker ๋ช ๋ น์ด ์ ๋ฆฌ (0) | 2023.09.08 |