๐ŸณDocker-CLI

๋ฐ•ํ˜•์„ยท2022๋…„ 3์›” 18์ผ
0

๋„์ปค

๋ชฉ๋ก ๋ณด๊ธฐ
2/2
post-thumbnail

Docker CLI



Docker CLI ๋ช…๋ น์–ด ์˜ต์…˜

์˜ต์…˜์„ค๋ช…
-ddetached mode, ํ”ํžˆ ๋ฐ๋ชฌ์ด๋ผ ๋ถ€๋ฅด๋Š” ๋ฐฑ๊ทธ๋ผ์šด๋“œ ํฌ์›Œ๋”ฉ
-pํ˜ธ์ŠคํŠธ์™€ ์ปจํ…Œ๋‹ˆ์–ด์˜ ํฌํŠธ ์—ฐ๊ฒฐ(ํฌ์›Œ๋”ฉ)
-vํ˜ธ์ŠคํŠธ ์ปจํ…Œ์ด๋„ˆ์˜ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์—ฐ๊ฒฐ(๋งˆ์šดํŠธ)
-e์ปจํ…Œ์ด๋„ˆ ๋‚ด์—์„œ ์‚ฌ์šฉํ•  ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •
--name์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„ ์„ค์ •
-it-i ์™€ -t๋ฅผ ํ•ฉํ•œ ๊ฒƒ์œผ๋กœ ํ„ฐ๋ฏธ๋„ ์ž…๋ ฅ์„ ์œ„ํ•œ ์˜ต์…˜ (์ฃผ๋กœ exec -it๋กœ ๋งŽ์ด ์‚ฌ์šฉ)
--rmํ”„๋กœ์„ธ์Šค ์ข…๋ฃŒ์‹œ ์ปจํ…Œ์ด๋„ˆ ์ž๋™์ œ๊ฑฐ
---link์ปจํ…Œ์ด๋„ˆ ์—ฐ๊ฒฐ

Docker CLI reference

๋„์ปค๋Š” GUI๋กœ๋„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ CLIํ™˜๊ฒฝ์—์„œ ๋” ํฐ ํž˜์„ ๋ฐœํœ˜ํ•œ๋‹ค. CLI์ปค๋งจ๋“œ๋ฅผ ์•Œ์•„๋ณด์ž

์ฐธ๊ณ ๋กœ ์ด ๋ธ”๋กœ๊น…์€ Top 15 Docker Commands You Should Know๋ผ๋Š” ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ๋งŒ๋“ค์—ˆ๋‹ค.

๋‚˜๋Š” ์šฐ๋ถ„ํˆฌ๋ฅผ ์“ฐ๊ธฐ ๋•Œ๋ฌธ์— sudo๋ช…๋ น์–ด๋ฅผ ๋„ฃ์„๊ฒƒ์ด๋‹ค. ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ ์‚ฌ์šฉ์ž๋Š” sudo๋ฅผ ์ ์ ˆํžˆ ๋นผ๊ธธ ๋ฐ”๋ž€๋‹ค.

์ฐธ๊ณ ๋กœ ๋Œ€ํ™œํ˜ธ ์•ˆ์˜ ์˜ต์…˜๋“ค์€ ์ƒ๋žตํ•ด๋„ ๋˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ค‘๊ด„ํ˜ธ๋Š” ์˜ˆ์‹œ๋กœ ๋„ฃ์€ ๋‹จ์–ด์ด๋‹ค.


docker --version

์ด ๋ช…๋ น์–ด๋Š” ํ˜„์žฌ ๋‹ค์šด๋กœ๋“œ๋œ ๋„์ปค์˜ ๋ฒ„์ „์„ ์•Œ๋ ค์ค€๋‹ค.

  • $ docker --verion


docker pull

์ด ๋ช…๋ น์–ด๋Š” Docker Hub์— ์žˆ๋Š” repository์˜ ์ด๋ฏธ์ง€๋ฅผ ๋‹ค์šด๋ฐ›์„์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด๋‹ค.

  • sudo docker pull ubuntu


docker run

์ด๊ฒƒ์€ ์ด๋ฏธ์ง€๋กœ ๋ถ€ํ„ฐ ์ฝ˜ํ…Œ์ด๋„ˆ๋ฅผ ๋งŒ๋“œ๋Š” ๋ช…๋ น์–ด์ด๋‹ค.

  • sudo docker run -it -d ubuntu


docker ps

์ด๊ฒƒ์€ ์‹คํ–‰์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ์˜ ๋ชฉ๋ก์„ ๋ณผ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด

  • sudo docker ps

docker ps -a

์ด๊ฒƒ์€ ์‹คํ–‰์ค‘๊ณผ ์ค‘์ง€๋œ ์ปจํ…Œ์ด๋„ˆ ๊นŒ์ง€์˜ ๋ชฉ๋ก์„ ๋ณด์—ฌ์ฃผ๋Š” ๋ช…๋ น์–ด ์ด๋‹ค.

  • sudo docker ps -a

docker exec

์ด๊ฒƒ์€ ์‹คํ–‰์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด์ด๋‹ค. ์ปจํ…Œ์ด๋„ˆ CLI๋ฅผ ์ด์šฉํ• ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉํ•จ.

  • sudo docker exec -it [์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„] bash

ํ”„๋กฌํ”„ํŠธ์˜ ๋ชจ์–‘์ด ๋ฐ”๋€๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์‹œ ํ˜ธ์ŠคํŠธ CLI๋กœ ๋Œ์•„์˜ค๊ณ  ์‹ถ๋‹ค๋ฉด exit๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค.


docker stop

์ด๊ฒƒ์€ ์‹คํ–‰์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋ฉˆ์ถ”๋Š” ๋ช…๋ น์–ด์ด๋‹ค.

  • sudo docker stop [์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„]


docker kill

์ด ๋ช…๋ น์–ด๋Š” ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰์„ ์ฆ‰์‹œ ์ค‘์ง€์‹œํ‚จ๋‹ค. stop๊ณผ kill์˜ ์ฐจ์ด์ ์€ ์ •์ƒ์ข…๋ฃŒ ๋˜๋Š” ์‹œ๊ฐ„์˜ ์ฐจ์ด ์ด๋‹ค. ๋งŒ์•ฝ์— stop์„ ํ–ˆ์ง€๋งŒ ์ข…๋ฃŒ๋˜๋Š” ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ๊ธธ๋ฉด kill์„ ์‚ฌ์šฉํ•œ๋‹ค.

  • sudo kill [์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„]

docker commit

์ด ๋ช…๋ น์–ด๋Š” ๋กœ์ปฌ์— ์žˆ๋Š” ์ˆ˜์ •๋œ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒˆ๋กœ์šด ์ด๋ฏธ์ง€๋กœ ๋งŒ๋“ ๋‹ค.

  • sudo docker commit {์ปจํ…Œ์ด๋„ˆ ID} {username/imagename}


docker login

์ด ๋ช…๋ น์–ด๋Š” Docker Hub repository์— ๋กœ๊ทธ์ธ ํ• ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค.

  • sudo docker login

docker push

์ด ๋ช…๋ น์–ด๋Š” Docker Hub repository์— ์ด๋ฏธ์ง€๋ฅผ ์˜ฌ๋ฆด๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

  • sudo docker push {username/imagename}

์ž˜ ์˜ฌ๋ผ๊ฐ”๋‹ค.


docker images

์ด ๋ช…๋ น์–ด๋Š” ๋กœ์ปฌ์— ์ €์žฅ๋œ ๋„์ปค ์ด๋ฏธ์ง€๋“ค์˜ ๋ชฉ๋ก์„ ๋ณด์—ฌ์ค€๋‹ค.

  • sudo docker images


docker rm

์ด ๋ช…๋ น์–ด๋Š” ์ •์ง€๋œ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ง€์šธ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

  • sudo docker rm [์ปจํ…Œ์ด๋„ˆ ID]

๊ทธ๋ฆฌ๊ณ  ๊ฐ•์ œ๋กœ ์ค‘์ง€ํ•˜๊ณ  ์‚ญ์ œํ•˜๊ณ  ์‹ถ์œผ๋ฉด ๋‹ค์Œ์„ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค.

  • sudo docker rm --force [์ปจํ…Œ์ด๋„ˆ ID]
    ๋ช…๋ น์ค„ ํ•˜๋‚˜๋กœ ์‹คํ–‰์ค‘ + ์ค‘์ง€๋œ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋“ค์„ ์ง€์šฐ๊ณ  ์‹ถ์œผ๋ฉด
  • sudo docker rm -f $(docker ps -aq)


์•Œ๋‹ค์‹œํ”ผ ๋ฆฌ๋ˆ…์Šค CLI๋Š” ์„ฑ๊ณตํ–ˆ์œผ๋ฉด ์•„๋ฌด๊ฒƒ๋„ ๋„์šฐ์ง€ ์•Š๋Š”๋‹ค.


docker rmi

์ด ๋ช…๋ น์–ด๋Š” ๋กœ์ปฌ์— ์žˆ๋Š” ๋„์ปค ์ด๋ฏธ์ง€๋ฅผ ์‚ญ์ œํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค.

  • sudo docker rmi [์ด๋ฏธ์ง€ ์ด๋ฆ„]
    ๋ช…๋ น์ค„ ํ•˜๋‚˜๋กœ ๋ชจ๋“  ์ด๋ฏธ์ง€๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ

  • sudo docker rmi $(docker images -q)


docker build

์ด ๋ช…๋ น์–ด๋Š” ์ง€์ •๋œ ๋„์ปค ํŒŒ์ผ์—์„œ ์ด๋ฏธ์ง€๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.

  • sudo docker build {psth to Dockerfile}

๋‹ค์Œ์—” ๋” ์‹ฌํ™”๋œ ๋‚ด์šฉ์„ ๋“ค๊ณ  ์˜ค๊ฒ ๋‹ค... ํ•˜ํ•˜
:)

profile
Better Than Yesterday

0๊ฐœ์˜ ๋Œ“๊ธ€