[Docker] Docker image, container์ life cycle
์ด๋ฒ ๊ธ์์๋ ํน์ ์ํํธ์จ์ด๋ฅผ Docker์ container๋ฅผ ํตํด ์คํํด๋ด์ผ๋ก์จ, Docker image ๋ฐ container์ ์๋ช ์ฃผ๊ธฐ์ ์ด๋ฅผ ๋ค๋ฃจ๋ ๊ฐ๊ฐ์ ๋ช ๋ น์ด ๋ฐ ์คํ ๋ฐฉ๋ฒ์ ๋ํด ์ดํด๋ณด๋๋ก ํ๊ฒ ๋ค. ์ฆ, Docker์ ๊ธฐ์ด ๋ถ๋ถ์ด๋ผ ํ ์ ์๋ image, container ์คํ, ์ค๋จ, ์ญ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ ๋ฆฌํ๋ค. ์ด ๊ณผ์ ์์ ๋จผ์ Docker ๋ช ๋ น์ด์ ๋ํ ์ฌ์ค๊ณผ ๋๋ถ์ด, Docker registry์์ image๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ์ ๋ํด์๋ ํฌ๊ด์ ์ผ๋ก ๋ค๋ค๋ณด๊ณ ์ ํ๋ค.
์ด ๊ธ์์ ์ค์ต ๋ถ๋ถ์ WSL 2, Docker Desktop์ ์ด์ฉํ๋ค. Docker Desktop์ ๋ถ๋ช GUI๋ผ์ ์ด์ฉํ๊ธฐ ํธํ๋ค๋ ์ฅ์ ์ด ์๋ค. ํ์ง๋ง ์ฌ๊ธฐ์๋ CLI ๋ฐฉ์์ผ๋ก ๋ช ๋ น์ด๋ฅผ ์ง์ ์ ๋ ฅํ์ฌ ์คํํ๋ ๋ฐฉ๋ฒ ์์ฃผ๋ก ์ดํด๋ณด๋๋ก ํ ๊ฒ์ด๋ค. ์น ๋ฐฐํฌ ๋ฑ ์๋ฒ ์ฉ๋๋ก ์ฌ์ฉํ๊ธฐ ์ํด ์ปดํจํ ์์์ ์กฐ๊ธ์ด๋ผ๋ ์๊ปด์ ํ์ฉํด์ผํ๋ ์ ์ฅ์์๋ GUI๋ ์ปดํจํฐ ์ฑ๋ฅ์ ๋ถ๋ด์ด ๋ ์ ์์ด ๋ณดํต CLI ํํ๋ก ๋ง์ด ์ฌ์ฉํ๋ค๊ณ ํ๋ค. ๊ทธ๋์ ์ด๋ฌํ ์ํฉ๋ค์ ๋๋นํ๊ธฐ ์ํด GUI๋ณด๋จ CLI ์์ฃผ๋ก ์ดํด๋ณด๊ณ ์ ํ๋ค.
WSL 2 ํ๊ฒฝ์์ Docker ์คํํด๋ณด๊ธฐ
์ฌ์ค โ[OS][Docker] WSL 2 - Windows์์์ Linux, Docker ์ค์น ๋ฐ ๊ฐ๋จํ ์ฌ์ฉ ๋ฐฉ๋ฒโ์ด๋ผ๋ ์ด์ ๊ธ์์ WSL2, Docker Desktop ์ค์น ๋ฐ ์ฌ์ฉ ๋ฐฉ๋ฒ์ ๋ค๋ฃจ๊ธด ํ์ง๋ง, ์ฌ๊ธฐ์ ๋ค์ ํ ๋ฒ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํด๋ณด๊ณ ์ ํ๋ค. ์ค์น ๋ฐฉ๋ฒ์ ๋ํด์ ํด๋น ๊ธ์ ๋ค๋ค์ผ๋ ์ฌ๊ธฐ์๋ ์ฌ์ฉ ๋ฐฉ๋ฒ์ ๋ํด์๋ง ๊ฐ๋จํ ๋ค๋ค๋ณด๊ฒ ๋ค.
- ์ ์์ ์ธ ๋ฐฉ๋ฒ
-
์ฐ์ Windows ๋ฐํํ๋ฉด ์๋์ ์์ ํ์์ค์ ์๋ ๊ฒ์์ฐฝ์ โpowershellโ์ด๋ผ ๊ฒ์ํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด โWindows PowerShellโ์ด ๋ฌ๋ค. โRun as Administratorโ๋ฅผ ํด๋ฆญํ์ฌ ๊ด๋ฆฌ์๋ก ์คํํ๋ค.
์ฌ์ง 1-1.
-
๊ทธ๋ฌ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํฐ๋ฏธ๋ ์ฐฝ์ด ๋ฐ ๊ฒ์ด๋ค.
wsl์ด๋ผ๊ณ ์น๋ฉด ์ด๋ฏธ ์ค์น๋ ๋ฆฌ๋ ์ค ๋ฐฐํฌํ์ด ์คํ๋์ด ํด๋น ํฐ๋ฏธ๋๋ก ์ ํ๋ ๊ฒ์ด๋ค. ํ์์ ๊ฒฝ์ฐ Ubuntu๋ฅผ ์ค์นํ๊ธฐ์ ํด๋น ๋ฐฐํฌํ์ด ์คํ๋๋ค.
์ฌ์ง 1-2.
-
Docker Desktop์ ์คํ์ํจ๋ค. ํด๋น ํ๋ก๊ทธ๋จ์ ํค๊ธฐ๋ง ํด๋ Docker engine์ ์ ์ ์๋ํ ๊ฒ์ด๋ค. ์๋ ์ฌ์ง์ฒ๋ผ ์ข์ธก ํ๋จ์ โEngine runningโ์ด๋ผ ๋์ด ์์ผ๋ฉด docker engine์ด ์คํ ์ค์ด๋ผ๋ ๋ป์ด๋ค.

์ฌ์ง 1-3.
-
๋ค์ ํฐ๋ฏธ๋ ์ฐฝ์ผ๋ก ๋์์์,
docker version๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด๋ณด์. ๋ง์ฝ ๋์ปค ์์ง์ด ์ ์ ์๋ํ๋ค๋ฉด Docker client ๋ฐ server ๊ด๋ จ ์ ๋ณด๋ค์ด ๋์ฌ ๊ฒ์ด๊ณ , ๊ทธ๋ ์ง ์๋ค๋ฉด docker ๋ช ๋ น์ด ์์ฒด๋ฅผ ์ฐพ์ ์ ์๋ค๋ ๋ง์ด ๋์ฌ ๊ฒ์ด๋ค. ์๋ ์ฌ์ง์ ์๋ซ ๋ถ๋ถ๊ณผ ๊ฐ์ด docker client ๋ฐ server ์ ๋ณด๊ฐ ์ ์์ ์ผ๋ก ์ถ๋ ฅ๋๋ค๋ฉด docker๋ฅผ ์ฌ์ฉํ ์ค๋น๋ฅผ ๋ง์ณค๋ค๋ ๋ป์ด๋ค. ํ ํธ, ์ํํ ์ฌ์ฉ์ ์ํด ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ๋cd ~๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ฌ ์ฌ์ฉ์ ํ ๋๋ ํ ๋ฆฌ์์ ์ํํ๋ ๊ฒ์ ์ถ์ฒํ๋ค.
์ฌ์ง 1-4.
-
- ์กฐ๊ธ ๋ ์ฝ๊ฒ ์คํํ๋ ๋ฐฉ๋ฒ
-
์ฌ์ค WSL2์ Ubuntu๊น์ง ์ค์น ์๋ฃํ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด Windows ์์ ํ์์ค์ ๊ฒ์์ฐฝ์ โUbuntuโ๋ผ๊ณ ๋ง ์ณ๋ ํด๋น ์ฑ์ด ๋ฌ๋ค. ์ด๋ฅผ ์คํ์ํค๋ฉด WSL2์์ Ubuntu๋ฅผ ๋ฐ๋ก ์คํ์ํฌ ์ ์๋ค. ์ด ์ํ์์ ์๊น์ ๋๊ฐ์ด Docker Desktop์ ํค๋ฉด ๋ฐ๋ก Docker๋ฅผ ์ฌ์ฉํ ์ค๋น๋ฅผ ๋ง์น๊ฒ ๋๋ค. ์ฌ์ด ์ฌ์ฉ์ ์ํด ์๋ ์ฌ์ง์์ โ์์ ํ์์ค์ ๊ณ ์ โ์ ๋๋ฅด๋ฉด ์์ ํ์์ค์ ํด๋น ์์ด์ฝ์ด ๋ฑ๋ก๋ ๊ฒ์ด๋ค. ํด๋น ์์ด์ฝ์ ํด๋ฆญํ๊ธฐ๋ง ํด๋ ๋ฐ๋ก WSL 2 ๊ธฐ๋ฐ์ ๋ฆฌ๋ ์ค ๋ฐฐํฌํ CLI ํฐ๋ฏธ๋ ์ฐฝ์ด ๋ฐ๋ก ๋ฐ ๊ฒ์ด๋ค.

์ฌ์ง 1-5.
-
Docker์ ๊ธฐ๋ณธ์ ์ธ ๋ช ๋ น์ด์ ๊ทธ ๊ตฌ์กฐ
CLI ํ๊ฒฝ์์ Docker์ ๋ช ๋ น์ด ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ๋ค.
docker ์์_์ปค๋งจ๋ ํ์_์ปค๋งจ๋ [์ต์
] ๋์ [์ต์
์ธ์]
์ฝ๋ 1-1. docker ์ปค๋งจ๋ ๊ตฌ์กฐ
docker container run -dit some-container --mode 1
์์ ํ์ ์ต์
๋์ ์ธ์
์ฝ๋ 1-2. docker ๋ช ๋ น์ด ์์
- ์์ ์ปค๋งจ๋: โ๋ฌด์์โ์ ํด๋นํ๋ ์ปค๋งจ๋. ์ฃผ๋ก image, container ๋ฑ Docker์ ์์๋ค ์ค ํ๋๋ฅผ ์ ๋ ฅํ๋ค.
- ํ์ ์ปค๋งจ๋: ํ๋์ ํด๋นํ๋ ์ปค๋งจ๋.
run,ls,start๋ฑ ์์ ์ปค๋งจ๋๋ก ์ง์ ํ docker ์์์ ๋ํด ์ด๋ค ํ๋์ ํ ์ง๋ฅผ ๊ฒฐ์ ํ๋ค.docker container run์ด๋ผ๋ฉด container๋ผ๋ ๊ฒ์ ์คํํ๋ผ๋ ๋ป์ด๋ค. - ์ต์
: ์๋ต ๊ฐ๋ฅํ๋ค. ํ์ํ ์ถ๊ฐ ๊ธฐ๋ฅ์ด ์์ ๋ ์ต์
์ ์ฌ์ฉํ๋ ๊ฒ์ด๋ผ ๋ณด๋ฉด ๋๋ค. ์ ์ฝ๋ 1-2์์๋
-d,-i,-t๊ฐ๊ฐ์ ์ต์ ๋ค์ ํธ์์ ํฉ์น ๊ฒ์ด๋ค. - ๋์: ๊ตฌ์ฒด์ ์ผ๋ก ์ด๋ค ๊ฒ์ ๋ํด ๋ช
๋ น์ ์ํํ ์ง ๊ฒฐ์ . ์๋ฅผ ๋ค์ด ์ ์ฝ๋ 1-2์ฒ๋ผ
container์ ๋ํด ์ํํ ๊ฒฝ์ฐ, ๊ตฌ์ฒด์ ์ผ๋ก ์ด๋ค container์ ๋ํด ์ํํ ์ง ๊ทธ container ์ด๋ฆ์ ์ง์ ํ๋ ๊ฒ์ด๋ค. ์ ์์์๋some-container๋ผ๋ ํน์ ์ปจํ ์ด๋๋ฅผ ์ง์ ํ ์์์ด๋ค.httpd,MySQL๋ฑ ์ฌ๋ฌ container๋ค์ด ์์ผ๋ ๊ทธ ์ค ํ๋๋ฅผ ํํด ๋์์ผ๋ก ์ง์ ํ๋ ๊ฒ์ด๋ค. - ์ธ์: ๋ฐ๋ก ์์ โ๋์โ์ ๋ํ ์ถ๊ฐ์ ์ผ๋ก ํ์ํ ์ธ์๊ฐ ์์ ๋ ์ง์ ํ๋ ๊ฒ. ์๋ต ๊ฐ๋ฅํ๋ค. ์๋ฅผ ๋ค์ด MySQL๊ณผ ๊ฐ์ DBMS์ ๊ฒฝ์ฐ username, password ๋ฑ์ ์ธ์๋ก ์ง์ ํ ์ ์๋ค.
--mode=1๋๋--name mycontainer์ ๊ฐ์ ํ์์ผ๋ก--์ต์ =๊ฐ๋๋--์ต์ ๊ฐ์ฒ๋ผ ์ต์ ์ ๊ฐ ์ธ์๊ฐ๋ค์ ์ง์ ํ์ฌ ์ฌ์ฉํ๋ค.
ํ ํธ, Docker์ image ๋ฐ container์ ๋ํด ์์ฃผ ์ฌ์ฉ๋๋ ๋ช ๋ น์ด๋ค๋ก๋ ๋ค์๊ณผ ๊ฐ๋ค.
docker image ํ์_์ปค๋งจ๋ ์ต์
| ํ์ ์ปค๋งจ๋ | ์ค๋ช | ์ถ์ฝํ |
|---|---|---|
| pull | docker registry์์ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ๋ค. | ย |
| rm | docker image ์ญ์ | docker rmi ... |
| ls | ํ์ฌ ๊ธฐ๊ธฐ์์ ๋ณด์ ํ docker image๋ค์ ๋ชฉ๋ก์ผ๋ก ์ถ๋ ฅ | docker images |
| build | docker image ์์ฑ(๋น๋) | ย |
docker container ํ์_์ปค๋งจ๋ ์ต์
| ํ์ ์ปค๋งจ๋ | ์ค๋ช | ์ถ์ฝํ |
|---|---|---|
| start | container ์คํ | ย |
| stop | container ์คํ ์ค๋จ, ์ ์ง | docker stop ... |
| create | docker image๋ก๋ถํฐ container ์์ฑ | ย |
| run | docker container๋ฅผ ์คํํ๋ค. ๋ง์ฝ ๊ทธ์ ํด๋นํ๋ image๊ฐ ์๋ค๋ฉด ์๋์ผ๋ก ํด๋น ์ด๋ฏธ์ง๋ฅผ registry๋ก๋ถํฐ ๋ค์ด๋ก๋ ๋ฐ๋๋ค. docker image pull ๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ. ์์ง image๋ก๋ถํฐ container๊ฐ ์์ฑ๋์ง ์์ ๊ฒฝ์ฐ ์๋ ์์ฑ๋๋ค. docker container create ์ ๊ฐ์ ํจ๊ณผ. ์ฆ, ์ปจํ
์ด๋๋ก ๋ง๋ค ์ด๋ฏธ์ง ์์ฒด๊ฐ ์๋ ๊ฒฝ์ฐ, docker image pull, docker container create, docker container start ์ด ์ธ ๋ช
๋ น์ด๊ฐ ์์ฐจ์ ์ผ๋ก ์คํ๋๋ ๊ฒ๊ณผ ๊ฐ๋ค. |
docker run ... |
| rm | ์ ์ง๋ container๋ฅผ ์ญ์ ํ๋ค. | docker rm ... |
| exec | ์คํ ์ค์ธ container ๋ด์์ ํ๋ก๊ทธ๋จ ์คํ | ย |
| ls | ํ์ฌ ๋ณด์ ํ container๋ค์ ๋ชฉ๋ก์ ์ถ๋ ฅ. | docker ps |
| cp | container, host ๊ฐ ํ์ผ ๋ณต์ฌ ๋ช ๋ น์ด. | ย |
| commit | container๋ฅผ image๋ก ๋ณํ. | ย |
| restart | ์ค๋จ๋ ์ํ์ container๋ฅผ ์ฌ์คํ. | ย |
docker ๊ตฌ์ฑ ์์๋ค์ธ image, volume ๋ฑ๊ณผ ๋ฌ๋ฆฌ container์ ๊ฒฝ์ฐ ํน์ดํ๊ฒ docker container stop ๊ณผ ๊ฐ์ ๋ช
๋ น์ด์์ container ๋ฅผ ์ ์ธํ๊ณ docker stop ๊ณผ ๊ฐ์ด ์ถ์ฝํ ์๋ ์๋ค. image๋ ๊ทธ ์ธ ์์๋ค์๋ ์ ์ฉ๋์ง ์๊ณ container์์๋ง ์ ์ฉ๋๋ ์์ธ์ด๋ ์ฃผ์.
ํ ํธ ์์ฃผ ์ฐ์ด๋ ์ต์ ์๋ ๋ค์๊ณผ ๊ฐ์ด ์กด์ฌํ๋ค.
| ์ต์ | ์ค๋ช | ๋น๊ณ |
|---|---|---|
--name ์ปจํ
์ด๋๋ช
|
์ปจํ ์ด๋ ์ด๋ฆ ์ง์ | ย |
-p ํธ์คํธ_ํฌํธ๋ฒํธ:์ปจํ
์ด๋_ํฌํธ๋ฒํธ |
ํธ์คํธ, ์ปจํ ์ด๋ ๊ฐ ํต์ ์ ์ํ ํฌํธ ๋ฒํธ ์ง์ . | ย |
-v ํธ์คํธ_๋์คํฌ:์ปจํ
์ด๋_๋๋ ํ ๋ฆฌ |
๋ณผ๋ฅจ์ ์ปจํ ์ด๋์ ๋ง์ดํธ | ย |
--net=๋คํธ์ํฌ๋ช
|
์ปจํ ์ด๋๋ฅผ ๋คํธ์ํฌ์ ์ฐ๊ฒฐ | ย |
-e ํ๊ฒฝ๋ณ์๋ช
=๊ฐ |
ํ๊ฒฝ๋ณ์ ์ค์ | ย |
-d |
์ปจํ ์ด๋๋ฅผ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์คํ | ์ปจํ ์ด๋์ ํ๋ก๊ทธ๋จ์ ๋ฐฑ๊ทธ๋ผ์ด๋์ ์คํ์ํค๋ฉด์ ๋์์ ๋ค๋ฅธ docker ์์ ์ ํ๊ณ ์ ํ ๋ ์ฌ์ฉ. ์ด๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด ์ปจํ ์ด๋์ ํ๋ก๊ทธ๋จ์ด ์คํ ์ข ๋ฃ๋ ๋๊น์ง ํฐ๋ฏธ๋๋ก ์๋ฌด๋ฐ ์์ ์ ํ ์ ์์. ์งง์ ์๊ฐ ๋ด์ ํ ๋ฒ๋ง ์คํํ๊ณ ๋ง๋ ์ปจํ ์ด๋์ ๊ฒฝ์ฐ์๋ ํด๋น ์ต์ ์ด ๋ถํ์ํจ. |
-i |
์ปจํ ์ด๋์ ํฐ๋ฏธ๋์ ์ฐ๊ฒฐ. ์ง์ ํด๋น ์ปจํ ์ด๋์ ์ ์ํ์ฌ ์์ ์ ํ๊ณ ์ ํ ๋ ์ฌ์ฉ. | interactive ์ ์ฝ์. |
-t |
ํน์ ํค ์ฌ์ฉ ๊ฐ๋ฅํ๊ฒ ํจ. ์ด ์ต์
์ -i ์ ํจ๊ป ์ฌ์ฉํด์ผ ๋ช
๋ น ์
์ถ๋ ฅ ๊ฒฐ๊ณผ๊ฐ shell์ ํตํด ์ถ๋ ฅ๋ ์ ์๋ค. |
ย |
-help |
์ฌ์ฉ ๋ฐฉ๋ฒ์ ๋ณด๊ณ ์ ํ ๋. | ย |
์ปจํ ์ด๋์ ์๋ช ์ฃผ๊ธฐ
์ฒ์ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋๋ฐ๊ณ ๊ทธ ์ด๋ฏธ์ง๋ก๋ถํฐ ์ปจํ ์ด๋๋ฅผ ์คํํ๋ ๋ชจ๋ ๊ณผ์ ์์์ ์ปจํ ์ด๋์ ์๋ช ์ฃผ๊ธฐ๋ ๋ค์๊ณผ ๊ฐ์ด ํ๋ฅธ๋ค.

๊ทธ๋ฆผ 2-1. docker container์ ์๋ช ์ฃผ๊ธฐ์ ๊ทธ์ ๊ด๋ จ๋ ๋ช ๋ น์ด๋ค.
- ํน์ ์ํํธ์จ์ด๋ฅผ docker์์ ์คํํ๊ณ ์ ํ ๋ ๊ด๋ จ image๊ฐ ๋ก์ปฌ ๊ธฐ๊ธฐ์ ์๋ ๊ฒฝ์ฐ, DockerHub์ ๊ฐ์ docker registry๋ก๋ถํฐ ํด๋น image๋ฅผ ๋ค์ด๋ก๋ ๋ฐ๋๋ค.
docker image pull๋ช ๋ น์ด๊ฐ ์ฌ์ฉ๋๋ค.
- ๋ค์ด๋ก๋๋ฐ์ image๋ก๋ถํฐ container๋ฅผ ์์ฑํ๋ค.
docker container create๋ช ๋ น์ด๊ฐ ์ฌ์ฉ๋๋ค.
- ์์ฑ๋ container๋ฅผ ์คํ์ํจ๋ค.
docker container start๋ช ๋ น์ด๊ฐ ์ฌ์ฉ๋๋ค.- ์ 3๊ฐ์ง ๋ช
๋ น์ด๋ฅผ
docker container runํ๋๋ก ํฉ์ณ ์ฌ์ฉํ ์๋ ์๋ค. - ์๋ฒ์์ ์น ๋ฐฐํฌ์ ๊ฐ์ ํ์๋ฅผ ํ ๋, ๋ฐฐํฌ๋ฅผ ์ค๋จํ๋ค๋ ๊ฐ ๊ทธ ์ธ ์์ธ ์ํฉ๋ค์ด ๋ฒ์ด์ง์ง ์๋ ํ ์คํ๋๊ณ ์๋ container๋ ๊ณ์ ์คํ์ค์ธ ์ฑ๋ก ๋๋๋ค.
- ์ฌ๊ธฐ์๋ถํฐ๋ ์คํ ์ค์ธ container์ ๋ํด ๋ ์ด์ ํ์๊ฐ ์์ด์ก๋ค๋ ์ง ํ๋ ์ฌ๋ฌ ์ด์ ๋ก container๋ฅผ ํ๊ธฐํ๊ณ ์ ํ ๋ ๊ฑฐ์น๋ ๊ณผ์ ๋ค์ด๋ค. ์คํ ์ค์ธ container๋ฅผ ์ค๋จํ๋ค.
docker container stop๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ค.- container๊ฐ ์คํ ์ค์ธ ์ํฉ์์๋ ๋ฐ๋ก ํด๋น container๋ฅผ ์ญ์ ํ ์ ์๋ค. ๋ฐ๋ผ์ ์คํ ์ค์ธ container๋ฅผ ๋จผ์ ์ค๋จํ๋ ๊ฒ์ด ํ์๋ค.
- ์คํ ์ค๋จ๋ container๋ฅผ ์ญ์ ํ๋ค.
docker container rm๋ช ๋ น์ด๋ฅผ ์ด์ฉํ๋ค.
- ๋ ์ด์ image๋ฅผ ์ฌ์ฉํ์ง ์๋๋ค๋ฉด image๋ ์ญ์ ํ ์ ์๋ค.
docker image rm๋ช ๋ น์ด๋ฅผ ์ด์ฉํ๋ค.
Docker Desktop๊ณผ ๊ฐ์ GUI ํ๊ฒฝ์์ ์์
ํ๋ ๊ฒฝ์ฐ, ํ์ฌ image, container๋ค์ ๋ชฉ๋ก ๋ฐ ์ํ๋ค์ ํ ๋์ ํ์ธํ ์ ์์ง๋ง, CLI์ ๊ฒฝ์ฐ ์ด๋ฅผ ๋ฐ๋ก ์ ์๋ ์๊ธฐ์ ์ปจํ
์ด๋์ ๊ฒฝ์ฐ์๋ docker ps (docker container ls ์ ์ถ์ฝํ) ๋ช
๋ น์ด๋ฅผ, ์ด๋ฏธ์ง์ ๊ฒฝ์ฐ์๋ docker image ls ๋ช
๋ น์ด๋ฅผ ์ด์ฉํ์ฌ ๊ฐ๊ฐ ์ปจํ
์ด๋, ์ด๋ฏธ์ง ๋ชฉ๋ก๊ณผ ์ํ๋ฅผ ํ์ธํ๋ฉด์ ํน์ ์ปจํ
์ด๋, ์ด๋ฏธ์ง๋ฅผ ์์ฑ, ์ค๋จ, ์ญ์ ํ ์ง๋ฅผ ๊ฒฐ์ ํ๋ค.
์ค์ตํด๋ณด๊ธฐ
์ด ์ฑํฐ์์๋ ์์ ๋งํ ์ปจํ ์ด๋ ์๋ช ์ฃผ๊ธฐ์ ๋ํด ๊ฐ๋จํ๊ฒ CLI ํ๊ฒฝ์์ ์ค์ตํด๋ณด๊ณ ์ ํ๋ค.
๋จผ์ Docker Desktop ๋ฐ ๋ฆฌ๋ ์ค(ํ์์ ๊ฒฝ์ฐ ์ฐ๋ถํฌ) CLI๋ฅผ ์คํํ๋ค.
์ฌ๊ธฐ์๋ ์ด๋ฏธ์ง, ์ปจํ
์ด๋์ ์๋ช
์ฃผ๊ธฐ์ ๋ํด์ ๋ค๋ฃฐ ๊ฒ์ด๊ธฐ์ ํ์ํ ์ธ์๊ฐ ๋ํ๊ธฐ๋ ํ๊ณ ๋น๊ต์ ๊ฐ๋จํ ํ๋ก๊ทธ๋จ์ ๋์์ผ๋ก ์ค์ตํด๋ณด๊ณ ์ ํ๋ค. ์ฌ๊ธฐ์๋ Apache ์น ์๋ฒ์ธ httpd ๋ฅผ ๋์์ผ๋ก ์ค์ตํด๋ณด๊ฒ ๋ค.
์ฐธ๊ณ ๋ก, MySQL ๋ฑ ์ ๋ช ํ ์ํํธ์จ์ด๋ค์ docker image๋ค์ ํ์ธ, ๊ฒ์ํด๋ณด๊ณ ์ ํ๋ค๋ฉด โDockerHubโ๋ผ๋ docker registry์์ ํ์ธ ๊ฐ๋ฅํ๋ค.

์ฌ์ง 3-1. DockerHub์ ๋ฉ์ธ ํ์ด์ง

์ฌ์ง 3-2. DockerHub์์ httpd๋ฅผ ๊ฒ์ํ ๊ฒฐ๊ณผ. ์ฌ๊ธฐ์ httpd์ ์ฌ์ฉ๋ฒ, ๋ฒ์ , ๊ทธ ์ธ ์ ๋ณด๋ค์ ํ์ธํ ์ ์๋ค.
๋จผ์ bash ์ฐฝ์์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ ฅํ๋ค.
$ docker run --name my-apache-1 -d httpd
Unable to find image 'httpd:latest' locally
latest: Pulling from library/httpd
010f7d7e175f: Pull complete
ebd81352b960: Pull complete
4f4fb700ef54: Pull complete
062e450697fa: Pull complete
69b5b831a361: Pull complete
39d55e966aeb: Pull complete
507729664175: Download complete
c72742279dc1: Download complete
Digest: sha256:305fd8326a27a137fedb8900f26375699ab233cc37793f35cf5d7c65671fb252
Status: Downloaded newer image for httpd:latest
cf265bec25a87109acb66d2efce74453bd7e14fa3d8271cefa73f0a4cecfc1da
์ฝ๋ 2-1.
docker run --name my-apache-1 -d httpd ์ ๊ฐ์ด ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํ์๋ค.
--name my-apache-1: ์ด ์ปจํ ์ด๋์ ์ด๋ฆ์my-apache-1๋ก ์ง์ ํ๋ค. ์ด๋ฆ์ ํด๋น ์ปจํ ์ด๋๊ฐ ์ด๋ค ๊ฒ์ด๊ณ ์ด๋ค ์์ ์ ํ๋์ง์ ๊ด๋ จ ์๊ฒ ์ง์ผ๋ฉด ๋๊ฒ ๋ค.-d: ํด๋น ์ปจํ ์ด๋๋ฅผ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ๋์์ํจ๋ค.httpd: ์์ ์ธ๊ธํ Apache ์น ์๋ฒ์ธhttpd๋ฅผ ๋์์ผ๋ก ์คํํ๋ค.
์์ ์ธ๊ธํ๋ฏ, ํด๋น ๋ช ๋ น์ด๋ ๋ก์ปฌ ๊ธฐ๊ธฐ์ ํด๋น image๊ฐ ์๋ค๋ฉด DockerHub์์ ์๋์ผ๋ก ์ด๋ฅผ ๋ค์ด๋ก๋ ๋ฐ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ์ด๋ฏธ์ง๋ก๋ถํฐ ์ปจํ ์ด๋๋ฅผ ์์ฑ, ์คํ๊น์ง ์๋ํํด์ค๋ค. ์ ์ฝ๋ 2-1์์๋ ๋ก์ปฌ ๊ธฐ๊ธฐ์ ํด๋น ์ด๋ฏธ์ง๊ฐ ์์ด ์ด๋ฅผ ๋ค์ด๋ก๋๋ฐ๋ ๊ณผ์ ์ด ๋ํ๋ ์๋ค.
docker image ls ๋ฅผ ํตํด ํ์ฌ ์ ์ฅ๋ ์ด๋ฏธ์ง ๋ชฉ๋ก์ ํ์ธํ ์ ์๋ค.
$ docker image ls
i Info โ U In Use
IMAGE ID DISK USAGE CONTENT SIZE EXTRA
httpd:latest 305fd8326a27 177MB 47.6MB U
์ฝ๋ 2-2.
๊ทธ๋ฆฌ๊ณ docker ps ๋ฅผ ํตํด ํ์ฌ ์ปจํ
์ด๋ ์ ๋ณด๋ ๋ชฉ๋ก์ผ๋ก ํ์ธํ ์ ์๋ค.
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cf265bec25a8 httpd "httpd-foreground" About a minute ago Up About a minute 80/tcp my-apache-1
์ฝ๋ 2-3.
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| CONTAINER ID | ์ปจํ
์ด๋ ์๋ณ์. ์ปจํ
์ด๋ ์๋ณ์๋ ์์ด, ์ซ์์ ๋๋คํ ๊ธ์์ด๋ฏ๋ก, ์ฌ๋์ ์
์ฅ์์ ์๋ณํ๊ธฐ ์ด๋ ค์ธ ๋์๋ ์์ --name my-apache-1 ์ฒ๋ผ ์ปจํ
์ด๋์ ์ด๋ฆ์ ๋ถ์ฌํด์ฃผ๋ฉด ๋๋ค. |
| IMAGE | ํด๋น ์ปจํ ์ด๋๋ฅผ ์์ฑํ ๋ ์ฌ์ฉํ ์ด๋ฏธ์ง๋ช |
| CREATED | ์ปจํ ์ด๋ ์์ฑ ํ ๊ฒฝ๊ณผ ์๊ฐ |
| STATUS | ์ปจํ
์ด๋์ ํ์ฌ ์ํ๋ก, ์คํ ์ค์ด๋ผ๋ฉด Up , ์ข
๋ฃ๋ ์ํ๋ผ๋ฉด Exited ๋ก ํ์๋จ. |
| PORTS | ์ปจํ
์ด๋์ ํ ๋น๋ ํฌํธ ๋ฒํธ. ํธ์คํธ -> ์ปจํ
์ด๋ ํ์์ผ๋ก ํฌํธ ๋ฒํธ๊ฐ ์ถ๋ ฅ๋๋ฉฐ, ๋ ํฌํธ ๋ฒํธ๊ฐ ๋์ผํ ๊ฒฝ์ฐ ํ์ดํ ๋ท๋ถ๋ถ์ ์ถ๋ ฅ๋์ง ์๋๋ค. |
| NAMES | ์ปจํ
์ด๋ ์ด๋ฆ. ์ปจํ
์ด๋ ์์ฑ ์ --name ์ต์
์ ์ฌ์ฉํ๋ค๋ฉด ํด๋น ์ต์
๊ฐ์ผ๋ก ํ์๋ ๊ฒ์ด๋ค. |
docker ps ์ ๊ฒฝ์ฐ์๋ ํ์ฌ ์คํ๋๊ณ ์๋ ์ปจํ
์ด๋๋ง์ ์ถ๋ ฅํ๋ฉฐ, docker ps -a ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์ ์ง๋ ์ํ๋ฅผ ํฌํจํ ๋ชจ๋ ์ปจํ
์ด๋๋ค์ ๋ณด์ฌ์ค๋ค.
์ ํฐ๋ฏธ๋ ์ฐฝ์์ ๋ณด๋ฏ, docker ps ๋ก ์ถ๋ ฅํ ์ปจํ
์ด๋ ๋ชฉ๋ก์์ STATUS ๋ถ๋ถ์ด โUpโ์ผ๋ก ๋์ด ์๋ค๋ฉด ํ์ฌ ํด๋น ์ปจํ
์ด๋๊ฐ ์คํ๋๊ณ ์๋ค๋ ๋ป์ด๋ค.
์ด์ ์ปจํ ์ด๋์ ์ธ๋ชจ๊ฐ ๋คํด ์คํ ์ค์ธ ์ปจํ ์ด๋๋ฅผ ์ญ์ ํด๋ณธ๋ค๊ณ ํด๋ณด๊ฒ ๋ค. ์ฌ๊ธฐ์ ์ฃผ์ํ ์ ์, ์คํ ์ค์ธ ์ปจํ ์ด๋์ ๋ํด ๋ฌด์์ ์ญ์ ๋ช ๋ น์ด๋ฅผ ์ฃผ์ง ์๊ณ ๊ทธ ์ ์ ๋จผ์ ์ ์ง์์ผ์ผํ๋ค๋ ๊ฒ์ด๋ค.
$ docker stop my-apache-1
my-apache-1
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cf265bec25a8 httpd "httpd-foreground" 11 minutes ago Exited (0) 6 seconds ago my-apache-1
์ฝ๋ 2-4.
์์ ๊ฐ์ด ์์ ์ง์ ํ ์ปจํ
์ด๋ ์ด๋ฆ์ธ my-apache-1 ์ ์ด์ฉํ์ฌ docker stop ... ๋ช
๋ น์ด๋ฅผ ํตํด ํด๋น ์ปจํ
์ด๋๋ฅผ ์ค๋จ์์ผฐ๋ค. docker stop ... ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํ ์ดํ ํด๋น ์ปจํ
์ด๋๋ช
์ด ๊ทธ๋๋ก ์ถ๋ ฅ๋๋ค๋ฉด ํด๋น ๋ช
๋ น์ด๊ฐ ์ ์ํ๋์๋ค๋ ๋ป์ด๋ค. ๊ทธ ๊ฒฐ๊ณผ ํ์ฌ ์คํ ์ค์ธ ์ปจํ
์ด๋๋ง์ ์ถ๋ ฅํ๋ docker ps ๊ฒฐ๊ณผ๋ฌผ์ ํด๋น ์ปจํ
์ด๋ ์ ๋ณด๊ฐ ์ฌ๋ผ์ก๊ณ , docker ps -a ๋ฅผ ํตํด ์ดํด๋ณด์์ ๋ ํด๋น ์ปจํ
์ด๋์ โSTATUSโ๊ฐ โExitedโ๋ก ์ค๋จ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ด์ ํด๋น ์ปจํ ์ด๋๊ฐ ์ค๋จ๋์์ผ๋ ์ญ์ ํ ์ ์๊ฒ ๋์๋ค. ํด๋น ์ปจํ ์ด๋๋ฅผ ์ญ์ ํด๋ณด๊ฒ ๋ค.
$ docker rm my-apache-1
my-apache-1
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
์ฝ๋ 2-5.
์๊น์ฒ๋ผ ๊ฐ์ ์ปจํ
์ด๋ ์ด๋ฆ์ ๋์์ผ๋ก ํ์ฌ docker rm ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํ์๋ค. ๊ทธ ํ docker ps -a ๋ก ํ์ธํด๋ดค์ ๋ ํด๋น ์ปจํ
์ด๋๊ฐ ์์ ์ญ์ ๋์์์ ํ์ธํ ์ ์๋ค.
์ด๋ ๋ฏ, ์ปจํ
์ด๋์ ์๋ช
์ฃผ๊ธฐ์ ๋ฐ๋ฅธ ์์ฑ, ์คํ, ์ค๋จ, ์ญ์ ์์
์ ์ํํ๋ฉด์ ์์๋ก docker ps ๋๋ docker ps -a ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํ์ฌ ํ์ฌ ์ปจํ
์ด๋๊ฐ ์ด๋ค ์ํ์ธ์ง๋ฅผ ํ์
ํ ์ ์๋ค. CLI ํ๊ฒฝ์์๋ ํ์ฌ ์ปจํ
์ด๋ ๋ฐ ์ด๋ฏธ์ง์ ์ํ๊ฐ ์ด๋ค์ง ๋ฐ๋ก ํ์ธํ ์ ์์ผ๋ ์ด๋ฌํ ๋ช
๋ น์ด๋ฅผ ํตํด ํ์ธํ๋ ๊ฒ์ด๋ค.
ํ ํธ GUI ํ๊ฒฝ์ธ Docker Desktop์์๋ ๋ค์๊ณผ ๊ฐ์ด ์ด๋ฏธ์ง ๋ฐ ์ปจํ ์ด๋ ํํฉ์ ์ฝ๊ฒ ์ดํด๋ณผ ์ ์๋ค.

์ฌ์ง 3-3. Docker Desktop์์ ํ์ฌ ์ด๋ฏธ์ง ๋ชฉ๋ก์ ํ์ธ.

์ฌ์ง 3-4. Docker Desktop์์ ํ์ฌ ์ปจํ ์ด๋ ๋ชฉ๋ก ๋ฐ ์ํ๋ฅผ ํ์ธํ ์ ์๋ค. ์์ ์ปจํ ์ด๋๊ฐ ์๋ ๊ฒฝ์ฐ ํ๋ฉด์ ์๋ฌด๊ฒ๋ ๋จ์ง ์๋๋ค.
๋ง์ฝ ์ปจํ
์ด๋๋ฅผ ์ค๋จ์ํจ ์ํ์์ ํด๋น ์ปจํ
์ด๋๋ฅผ ์์ง ์ญ์ ํ์ง ์์์ ๋, ๋ค์ ์คํ์ํค๊ณ ์ ํ๋ ๊ฒฝ์ฐ, docker restart ... ๋ช
๋ น์ด๋ฅผ ์ด์ฉํ๋ฉด ๋๋ค.
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1823bf8045fa httpd "httpd-foreground" About a minute ago Exited (0) 2 seconds ago my-apache-1
$ docker restart my-apache-1
my-apache-1
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1823bf8045fa httpd "httpd-foreground" 2 minutes ago Up 4 seconds 80/tcp my-apache-1
์ฝ๋ 2-6.
์ปจํ ์ด๋๋ฅผ ์ข ๋ฃ์ํจ ์ํ์์ ์ด๋ฏธ์ง๋ ์ญ์ ํ๊ณ ์ ํ๋ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ ๊ณผ์ ์ ๊ฑฐ์น๋ฉด ๋๋ค.
์ฐ์ ํ์ฌ ์ปจํ
์ด๋๊ฐ ์ ๋ง๋ก ์ข
๋ฃ, ์ญ์ ๋์๋์ง docker ps -a ๋ฅผ ํตํด ํ์ธํ๋ค. ํด๋น ์ปจํ
์ด๋๊ฐ ์ญ์ ๋จ์ ํ์ธํ๋ฉด ์ฐ์ docker image ls ๋ฅผ ํตํด ํ์ฌ ์ด๋ฏธ์ง์ ์ํ ๋ฐ ์ด๋ฆ์ ํ์ธํ๋ค.
$ docker image ls
i Info โ U In Use
IMAGE ID DISK USAGE CONTENT SIZE EXTRA
httpd:latest 305fd8326a27 177MB 47.6MB
์ฝ๋ 2-7.
๊ทธ ํ, ํด๋น ์ด๋ฏธ์ง์ ์ด๋ฆ์ ๋์์ผ๋ก ํ์ฌ ๋ค์๊ณผ ๊ฐ์ด ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ฌ ์ญ์ ํ๋ค.
$ docker image rm httpd
Untagged: httpd:latest
Deleted: sha256:305fd8326a27a137fedb8900f26375699ab233cc37793f35cf5d7c65671fb252
$ docker image ls
i Info โ U In Use
IMAGE ID DISK USAGE CONTENT SIZE EXTRA
์ฝ๋ 2-8.
docker image ls ๋ฅผ ํตํด ๋ค์ ํ์ธํด๋ณด๋ ํด๋น ์ด๋ฏธ์ง๊ฐ ์ ์ญ์ ๋์์์ ํ์ธํ ์ ์๋ค.
image์ ๊ฒฝ์ฐ ๋์ค์ ๋ค์ ํ์ฉํ ๊ธฐํ๊ฐ ์๋ค๋ฉด ๊ตณ์ด ์ญ์ ํ์ง ์์๋ ๋๋ค. ์ญ์ ํ ๊ฒฝ์ฐ ๋์ค์ ๋ค์ ํ์ฉํ ๋ DockerHub์์ ๋ค์ ๋ค์ด๋ก๋ ๋ฐ์์ผํ๋ ๊ณผ์ ์ด ์๊ธฐ๊ธฐ์ ์ด ๊ณผ์ ์์ ์ฌ์ค์ ๋ถํ์ํ ์์ฒญ์ DockerHub์ ํ๋ ๊ฒ๊ณผ ๋ง์ฐฌ๊ฐ์ง์ด๊ธฐ ๋๋ฌธ์ด๋ค. ์ ๋ง๋ก ๋์ค์ ๋ค์ ์ฌ์ฉํ ๊ธฐํ๊ฐ ์๋ค๊ณ ํ๋จ๋๊ฑฐ๋, ์๋๋ฉด ์ง๊ธ ๋น์ฅ ์ ์ฅ ์ฉ๋ ํ๋ณด๊ฐ ์๊ธํ ๊ฒฝ์ฐ ๋ฑ์ ์ด๋ฏธ์ง๋ฅผ ์ญ์ ํ๋ฉด ๋๊ฒ ๋ค.
์์ ์ฝ๋ 2-7์์๋ ํด๋น ์ด๋ฏธ์ง์ ์ด๋ฆ์ด ์ ํํ๋ httpd:latest ๋ผ ์จ์ ธ ์๋๋ฐ, ์ฝ๋ก (:) ๋ค์ latest ๋ผ๊ณ ์จ์ ธ ์๋ ๊ฒฝ์ฐ์๋ httpd ๋ง ์
๋ ฅํด๋ ํด๋น ์ด๋ฏธ์ง๋ฅผ ์ญ์ ํ ์ ์๋ค. ๋ค๋ง httpd:2.4 ์ ๊ฐ์ด ๋ค์ ํน์ ๋ฒ์ ๋ช
์ด ๋ถ์ด ์๋ ๊ฒฝ์ฐ์๋ ํด๋น ๋ฒ์ ๋ช
๊น์ง ๋ช
์ํ์ฌ docker image rm httpd:2.4 ์ ๊ฐ์ด ๋ช
์ํ์ฌ ์ญ์ ํด์ผํ๋ค.
ํ ํธ, cf265bec25a8 ์ ๊ฐ์ด ๋ฌด์์๋ก ๊ฒฐ์ ๋๋ container ID์ ๋ํด, ๋งจ ์์ cf ์ฒ๋ผ ์๋ตํ๊ณ ์
๋ ฅํด๋ ํด๋น ์ปจํ
์ด๋๋ฅผ ๋์์ผ๋ก ๋ช
๋ น ์ํ์ด ๊ฐ๋ฅํ๋ค. ๋๋ container ID ๋ชจ๋ ์
๋ ฅํด๋ ๋๋ค.
docker stop cfdocker stop cf265bec25a8
๊ธ์ ๋ง์น๋ฉฐ
์ด๋ฒ ๊ธ์์๋ CLI ํ๊ฒฝ์์ docker image๋ฅผ ๋ด๋ ค๋ฐ๊ณ ๊ทธ๋ก๋ถํฐ ์ปจํ ์ด๋๋ฅผ ์์ฑ, ์คํ, ์ค๋จ, ์ญ์ ํด๋ณด๋ ์์ ๊น์ง ์ปจํ ์ด๋์ ์๋ช ์ฃผ๊ธฐ์ ๋ํด ์ดํด๋ณด์๋ค. ์ฌ์ค ์ด ๊ธ์์๋ docker์ ๊ธฐ์ด์ ์ธ ์ฌ์ฉ๋ฒ, ์ปจํ ์ด๋์ ์๋ช ์ฃผ๊ธฐ์ ์ด์ ์ ๋ง์ถ์๊ธฐ์ ํต์ฌ๋ง์ ์ค๋ช ํ๋ค๋ณด๋, ์ด ๊ธ์์ ๋ค๋ฃฌ ๊ฒ๋ง์ผ๋ก๋ ์๋ง ์ค๋ฌด์ ์ธ ํ์ฉ์ ํ๊ธฐ๋ ์ด๋ ค์ธ ๊ฒ์ด๋ค. ๊ทธ๋์ ์ด ๊ธ์์ ๋ค๋ฃฌ ๋ช ๋ น์ด ์ฌ์ฉ ๋ฐ ์ปจํ ์ด๋ ์๋ช ์ฃผ๊ธฐ์ ์ด๋ ์ ๋ ์์ง๋์๋ค๋ฉด ์๋ง ๋ค์๊ณผ ๊ฐ์ ์ง๋ฌธ์ด ๋ ์ค๋ฅผ ๊ฒ์ด๋ค.
- ์น ๋ธ๋ผ์ฐ์ ์์ ์น ์๋ฒ์ ์ ์ํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ์ง?
- ์น ์๋ฒ, WAS, DB ๋ฑ ์ค์ ์ธ๊ณ์์๋ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ๋ค์ ์๋ก ์ฐ๊ณํ์ฌ ์๋น์คํ๋๋ฐ, Docker์์๋ ์ด ์ปจํ ์ด๋๋ค์ ์ด๋ป๊ฒ ์๋ก ์ฐ๋ํ์ง?
- ๋ฐ์ดํฐ๋ ์ด๋์ ์ ์ฅํ์ง? ์ปจํ ์ด๋ ๋ด๋ถ์ ์ ์ฅํ๋ฉด ์ปจํ ์ด๋ ์ญ์ ์ ๊ฐ์ด ์ญ์ ๋ ํ ๋ฐโฆ
์ด๋ฌํ ์ ๋ค์ ์์ผ๋ก ๋ค๋ฅธ ๊ธ๋ค์์ ํ๋์ฉ ๋ค๋ค๋ณผ ์์ ์ด๋ค.
References
[1] ์ง์์ด: ์ค๊ฐ์ฌ์๋ผ ์๊ฒํ์นด, ์ฎ๊ธด์ด: ์ฌํจ์ญ, โ๊ทธ๋ฆผ๊ณผ ์ค์ต์ผ๋ก ๋ฐฐ์ฐ๋ ๋์ปค & ์ฟ ๋ฒ๋คํฐ์คโ, ์ํค๋ถ์ค
[2] Docker - ์ผ๊ฒฝํ ํ๋ก๊ทธ๋จ
This content is licensed under
CC BY-NC 4.0
๋๊ธ๋จ๊ธฐ๊ธฐ