- toc {:toc}
Docker Overview
-
Docker Edition Community Edition โ ๊ฐ์ธ ๊ฐ๋ฐ์, ์์ ํ์ ์ํด Enterprise Edition โ ๊ธฐ์ ๊ฐ๋ฐ, IT ํ์ ์ํด ๊ณ ์
-
Docker๋ ๋ฌด์์ธ๊ฐ?
-
CLI(Commend line interface), GUI๋ฅผ ํตํด์ ๋์ปค ์์ง์ ๋ช ๋ น์ ๋ณด๋ธ ๊ฒ์ด๋ค.
-
GUI๋ ๋ฌด๊ฒ๊ธฐ ๋๋ฌธ์ ์๋ฒ์์ ๋ง์ด ์ฌ์ฉํ์ง ์๋๋ค.
-
ssh๋ฅผ ํตํด์ ์๊ฒฉ ์ ์ํ์ฌ CLI๋ฅผ ํตํด ์ฌ์ฉํ๋ค.
-
Docker Engine์ ๋ฌด์์ธ๊ฐ?
-
Docker Daemon โ ์๋ฒ
- API ์์ฒญ๋ค์ ๋ฃ๊ณ Docker object๋ค์ ๊ด๋ฆฌํ๋ค. ๋ค๋ฅธ daemon๋ค๊ณผ ์ํตํ๋ค.
-
Docker Client (CLI, GUI๋ฅผ ์ด์ฉํด ๋์ปค๋ฅผ ์ฌ์ฉํ๋ ์ฌ์ฉ)
- CLI โ ๋์ปค ์์ง์ ๋ํ instruction์ ์ ๊ณตํ๋ค.
- ์น์ ํด๋ผ์ด์ธํธ-์๋ฒ ์ํคํ
์ณ์ ์ ์ฌํ๋ค. (remote server)
- ์๋ก ์ํธ์์ฉ
- ํด๋ผ์ด์ธํธ๊ฐ ์์ง์๊ฒ ์ปจํ ์ด๋ ์ผ์ ์ํํ๋๋ก ์์ฒญํ๋ค.
- ๋์ปค ํด๋ผ์ด์ธํธ๋ ํ๋ ์ด์์ daemon๊ณผ ์ํตํ ์ ์๋ค. ๋ ์ฌ์ด์ ์ํต์ ์ด๋ป๊ฒ ํ ๊ฒ์ด๋ โ rest api๋ฅผ ์ด์ฉํ๋ค. rest api(ํจ์ ํธ์ถ)
-
rest api โ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ณ ๋ฐ์์ฌ ์ ์๋๋ก ํ๋ api
- CRUD(Create, Read, Update, Delete) ์ฐ์ฐ์ ์ํํ๊ธฐ ์ํด URI๋ก get, post๋ฑ ์์ฒญ์ ๋ณด๋ด๋ฉด ์์์ ํน์ ํ ํํ๋ก ํํ๋๋ค.
-
restful api โ ์ค์ง์ ์ผ๋ก ๊ตฌํ ๊ฐ๋ฅํ ๊ฒ? ์ปดํจํฐ์ ์ปดํจํฐ๊ฐ http๋ผ๋ ํ๋กํ ์ฝ์ ์ฌ์ฉํด ํจ์ํธ์ถํ๋ฏ ์์ฒญํ๋ฉด ๊ทธ์ ๋ฐ๋ฅธ ์๋ต์ ๋๋ ค์ฃผ๋ ํ์
-
Docker registries
-
๋์ปค ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ๋ค.
-
Public registry
- ๋ชจ๋๊ฐ ์ฌ์ฉ๊ฐ๋ฅํ๋ค. Docker Hub & Docker Cloud
-
Private registry
- Docker Trusted Registry (DTR)
-
Docker Ecosystem
-
์ด๋ฏธ์ง๋ฅผ ๋ง๋ ๊ฒ์ ๋ํด ๋์ปค ํ๋ธ์ ์ฌ๋ฆฌ๋, ์ฝ๋๋ ์ฌ๋ฆฌ์ง ์๋๋ค. ์ฝ๋๋ git system์ ์ฌ๋ฆฐ๋ค.
-
๊ฐ๋ฐ โ ํ๋์จ์ด์ host os, container system
-
์ฝ๋์ Dockerfile (์ฝ๋)๋ git system์ ์ฌ๋ฆฐ๋ค.
-
์ด๋ฏธ์ง์ธ ๊ฒฝ์ฐ์๋ ์ปจํ ์ด๋ ๋ฆฌํฌ, ์ด๋ฏธ์ง ๋ฆฌํฌ์ ์ฌ๋ฆฐ๋ค.
Docker Underlying Technologies
- Go ์ธ์ด๋ฅผ ํตํด ๋ง๋ค์ด์ก๋ค.
- ์ปจํ ์ด๋๋ ๊ฐ์๋จธ์ ๊ณผ ๋ค๋ฅด๋ค.
- ๋์ปค๋ ๋ช ๋ น์ ์ํํ๋ค. ๋ช ๋ น์ ๋ฐ๋ผ ๋ค๋ฅด๋ค. ๋ช ๋ น์ ์ด๋ป๊ฒ ์ฃผ๋๊ฐ์ ๋ฐ๋ผ์ ์ง์๋ ์ง, ํ์๊ฐ ๋๋ ์ง ๊ฒฐ์ ๋๋ค. ๋ค์์ด ๊ฐ์๋จธ์ ๊ณผ ๋ค๋ฅด๋ค. ํ์ง๋ง ๊ฐ์๋จธ์ ๊ณผ ์ ์ฌํ ํน์ง์ ๊ฐ๋๋ค.
- ๋ฆฌ๋
์ค ์ปค๋ ํน์ง๋ค์ ์ฅ์ ์ ๊ฐ๋๋ค.
- Namespaces
- ์ด๋ฆ์ ๊ตฌ๋ถํ๋ค.
- ๋๊ฐ์ ์ปจํ ์ด๋๋ฅผ ์ฌ์ฉํ ๋ ํ๋์ ๋ฌผ๋ฆฌ์ ์ธ ์์์ ๋ ผ๋ฆฌ์ ์ผ๋ก๋ ๋์ด ๊ฐ๊ฐ ๋ฐ๋ก ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ ๋ง๋ค ์ ์๋ค.
- ๊ฐ์๋จธ์ ์ธ ๊ฒ์ฒ๋ผ ์ธ ์ ์๊ฒ ํ์ง๋ง ๊ฐ์๋จธ์ ์ ์๋๋ค.
- ๊ฐ์์ ์ปจํ ์ด๋๊ฐ ๋ถ๋ฆฌ๋๊ณ ์ ํ๋ ์ ๊ทผ์ ๊ฐ๋๋ค.
- Control group
- ๋์ปค๋ฅผ ์ฌ์ฉํด ํน์ ์ปจํ ์ด๋๊ฐ ์ด์ฉ๊ฐ๋ฅํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ํํ ์ ์๋ค.
- ๊ณต์ ํ๋ฉฐ ์ฌ์ฉํ ์ ์๋ ํ๋์จ์ด ์์์ ์ปจํ ์ด๋๊ฐ ์ ํ์ ์ผ๋ก ์ฌ์ฉํ๋๋ก ์ค์ ํ ์ ์๋ค.
- Union file systems
- Container format
- Namespaces