[Docker] Docker CLI

๐Ÿ“ ์ด ๊ธ€์€ 12์›” ์›ํ‹ฐ๋“œ์—์„œ ์ง„ํ–‰ํ•˜๋Š” ํ”„๋ฆฌ์˜จ๋ณด๋”ฉ BE ์ฑŒ๋ฆฐ์ง€๋ฅผ ์ฐธ์—ฌํ•˜๊ฒŒ ๋˜์–ด ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์ž˜๋ชป๋œ ๋‚ด์šฉ์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ์•Œ๋ ค์ฃผ์„ธ์š”! ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ™‡‍โ™€๏ธ

 

๐Ÿ”น Docker CLI ๋ช…๋ น์–ด

1. ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์—์„œ ์ด๋ฏธ์ง€ ๋‹ค์šด๋กœ๋“œ

// ์‚ฌ์šฉ๋ฒ•
docker pull [OPTIONS] NAME[:TAG|@DIGEST]

// ์˜ˆ์ œ
docker pull httpd

 
2. ์ด๋ฏธ์ง€ ๋ฆฌ์ŠคํŠธ ํ™•์ธ

// ์‚ฌ์šฉ๋ฒ•
docker images [OPTIONS] [REPOSITORY[:TAG]]
 
// ์˜ˆ์ œ
docker images

 
3. ์ด๋ฏธ์ง€ ์‹คํ–‰ - ์ƒˆ๋กœ์šด ์ปจํ…Œ์ด๋„ˆ ์ƒ์„ฑ

// ์‚ฌ์šฉ๋ฒ•
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

// ์˜ˆ์ œ
docker run httpd
docker run --name secondContainer httpd // ์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„ ์ง€์ •ํ•ด์„œ ์ƒ์„ฑ

์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„ ์ง€์ •ํ•ด์„œ ์ƒ์„ฑ

 
4. ์ปจํ…Œ์ด๋„ˆ ์ถœ๋ ฅ

// ์‚ฌ์šฉ๋ฒ•
docker ps [OPTIONS]

// ์˜ˆ์ œ
// ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ ์ถœ๋ ฅ
docker ps

// ๋ฉˆ์ถ˜ ์ปจํ…Œ์ด๋„ˆ๊นŒ์ง€ ๋ชจ๋‘ ์ถœ๋ ฅ
docker ps -a

๋ฉˆ์ถ˜ ์ปจํ…Œ์ด๋„ˆ๊นŒ์ง€ ์ถœ๋ ฅ

 
5. ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰

// ์‚ฌ์šฉ๋ฒ•
docker start [OPTIONS] CONTAINER [CONTAINER...]
 
// ์˜ˆ์ œ
docker start c8274d6a6273

 
6. ์‹คํ–‰ ์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ ์ค‘์ง€

// ์‚ฌ์šฉ๋ฒ•
docker stop [OPTIONS] CONTAINER [CONTAINER...]
 
// ์˜ˆ์ œ
docker stop 9b0f49de746c
docker stop -a

 
7. ์ปจํ…Œ์ด๋„ˆ ๋กœ๊ทธ ์ถœ๋ ฅ

// ์‚ฌ์šฉ๋ฒ•
docker logs [OPTIONS] CONTAINER
 
// ์˜ˆ์ œ
docker logs second
docker logs second -f

 
8. ์ปจํ…Œ์ด๋„ˆ ์‚ญ์ œ

  • ํ•ด๋‹น ์ปจํ…Œ์ด๋„ˆ๋Š” ์ค‘์ง€๋œ ์ƒํƒœ์—ฌ์•ผ ํ•œ๋‹ค.
// ์‚ฌ์šฉ๋ฒ•
docker rm [OPTIONS] CONTAINER [CONTAINER...]
 
// ์˜ˆ์ œ
docker rm 6026ab9b44cc
docker rm second -f

 
9. ์ด๋ฏธ์ง€ ์‚ญ์ œ

// ์‚ฌ์šฉ๋ฒ•
docker rmi [OPTIONS] IMAGE [IMAGE...]

// ์˜ˆ์ œ
docker rmi 6026ab9b44cc

 
10. ์ปจํ…Œ์ด๋„ˆ ๋‚ด์—์„œ ์‰˜ ์‹คํ–‰

// ์‚ฌ์šฉ๋ฒ•
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
 
// ์˜ˆ์ œ
docker exec -it awesome_elion /bin/sh

 
11. ์ปจํ…Œ์ด๋„ˆ ๊ด€๋ฆฌ

// ์‚ฌ์šฉ๋ฒ•
docker container COMMAND

 
11-1. ์ค‘์ง€๋œ ๋ชจ๋“  ์ปจํ…Œ์ด๋„ˆ ์‚ญ์ œ

// ์‚ฌ์šฉ๋ฒ•
docker container prune [OPTIONS]

// ์˜ˆ์ œ
docker container prune

 
11-2. ์ปจํ…Œ์ด๋„ˆ์˜ ์ž์› ์‚ฌ์šฉ ํ˜„ํ™ฉ ํ™•์ธ

// ์‚ฌ์šฉ๋ฒ•
docker container stats [OPTIONS] [CONTAINER...]
 
// ์˜ˆ์ œ
docker container stats

 
12. ์ด๋ฏธ์ง€ ๊ด€๋ฆฌ

// ์‚ฌ์šฉ๋ฒ•
docker image COMMAND

 
12-1. ์‚ฌ์šฉ ์ค‘์ด์ง€ ์•Š์€ ์ด๋ฏธ์ง€ ์‚ญ์ œ

// ์‚ฌ์šฉ๋ฒ•
docker image prune [OPTIONS]

// ์˜ˆ์ œ
docker image prune

 
12-2. ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ •๋ณด ์ถœ๋ ฅ

// ์‚ฌ์šฉ๋ฒ•
docker image inspect [OPTIONS]

// ์˜ˆ์ œ
docker image inspect httpd

 
12-3. ์ด๋ฏธ์ง€๋ฅผ ์ฐธ์กฐํ•ด ์ƒˆ๋กœ์šด ํƒœ๊ทธ์˜ ์ด๋ฏธ์ง€ ์ƒ์„ฑ

// ์‚ฌ์šฉ๋ฒ•
docker image tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]

// ์˜ˆ์ œ
docker image tag my-httpd drumgrammer/my-httpd:latest

 
13. ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ

  • [๋„์ปค ์ด๋ฏธ์ง€]/์ด๋ฏธ์ง€๋กœ ์ด๋ฏธ์ง€๋ช…์„ ์ง€์ •ํ•ด์•ผ ์ •์ƒ์ ์œผ๋กœ ์—…๋กœ๋“œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.
// ์‚ฌ์šฉ๋ฒ•
docker push [OPTIONS] NAME[:TAG]
 
// ์˜ˆ์ œ
docker push drumgrammer/my-httpd:latest

 
14. ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ

// ๋กœ๊ทธ์ธ ์‚ฌ์šฉ๋ฒ•
docker login [OPTIONS] [SERVER]
 
// ์˜ˆ์ œ
docker login
  
// ๋กœ๊ทธ์•„์›ƒ ์‚ฌ์šฉ๋ฒ•
docker logout [SERVER]

// ์˜ˆ์ œ
docker logout

 

15. Docker ๊ด€๋ฆฌ

// ์‚ฌ์šฉ๋ฒ•
docker system COMMAND

 
15-1. ์‚ฌ์šฉ ์ค‘์ด์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ ์‚ญ์ œ

์•„๋ž˜์™€ ๊ฐ™์ด ์‚ญ์ œ๋œ๋‹ค.

  • ์ข…๋ฃŒ๋œ ์ปจํ…Œ์ด๋„ˆ
  • ์‚ฌ์šฉ ์ค‘์ด์ง€ ์•Š์€ ๋„คํŠธ์›Œํฌ
  • ์‚ฌ์šฉ ์ค‘์ด์ง€ ์•Š์€ ์ด๋ฏธ์ง€
  • ์บ์‹œ
// ์‚ฌ์šฉ๋ฒ•
docker system prune [OPTIONS]

// ์˜ˆ์ œ
docker system prune

 
 
 


 
 
 

๐Ÿ”น Dockerfile ํ™œ์šฉ ์˜ˆ์ œ

1. Dockerfile

  • Dockerfile์ด ์žˆ๋Š” ์œ„์น˜์— index.html๋„ ์กด์žฌํ•ด์•ผ ํ•œ๋‹ค.
  • user/dokerfile-folder/index.html → /usr/local/apache2/htdocs/index.html ๋ณต์‚ฌ
FROM httpd:latest
COPY  index.html /usr/local/apache2/htdocs/index.html
EXPOSE 80

 

2. ์ด๋ฏธ์ง€ ๋งŒ๋“ค๊ธฐ

docker build -t jeongii/httpd .

 
3. ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ํ•˜๊ธฐ

docker run jeongii/httpd // ์ด๋ฏธ์ง€ ์‹คํ–‰
docker run -d -p 8888:80 my-httpd // ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰

 
 
 
 
 
๐Ÿ“ƒ reference

'Docker' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Docker] Docker๋ž€?  (1) 2023.12.06