Cloud Engineering/Docker ๐Ÿณ

[Docker] ์ปจํ…Œ์ด๋„ˆ ๊ด€๋ฆฌ ๋ช…๋ น์–ด - attach, exec, top, diff, logs, cp

minjiwoo 2023. 2. 1. 16:56
728x90

Docker Container ๋‚ด๋ถ€๋กœ ์—ฐ๊ฒฐ (attach)

$ docker container attach CONTAINER
$ docker attach CONTAINER

 

attach ๋ช…๋ น์–ด ์‚ฌ์šฉ์€ ๊ถŒ์žฅ๋˜์ง€ ์•Š๋Š”๋‹ค ๊ทธ ์ด์œ ๋Š” attach ๋ช…๋ น์–ด ์‹คํ–‰ํ›„ ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์— ์ง์ ‘ ์ ‘๊ทผํ•˜์—ฌ exitํ•˜๋ฉด ์‹ค์ œ ์šด์˜์ค‘์ธ ์„œ๋น„์Šค๊ฐ€ ์ค‘๋‹จ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. → ์—„์ฒญ๋‚œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊น€ !

[์˜ˆ์‹œ] attach ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์ปจํ…Œ์ด๋„ˆ centos7-10์— ์ง์ ‘ ์ ‘๊ทผํ•˜์—ฌ ์‹คํ–‰ํ•œ๋‹ค. 

[root@localhost ~]# docker start centos7-10
centos7-10
[root@localhost ~]# docker attach centos7-10
[root@164145c46559 /]# ls
anaconda-post.log  dev  file1  lib    media  opt   root  sbin  sys  usr
bin                etc  home   lib64  mnt    proc  run   srv   tmp  var


๊ทธํ›„ exit ์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ข…๋ฃŒํ•˜๋ฉด ์™„์ „ํžˆ ์ข…๋ฃŒ๋˜์–ด ์‹คํ–‰ ์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ ๋ชฉ๋ก์—์„œ ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค. 

[root@164145c46559 /]# exit
exit
[root@localhost ~]# docker container ls 
CONTAINER ID   IMAGE          COMMAND              CREATED       STATUS         PORTS     NAMES
0e14a186aabf   httpd:latest   "httpd-foreground"   2 hours ago   Up 5 minutes   80/tcp    web5
92bc18454b1c   centos:7       "/bin/bash"          2 hours ago   Up 2 hours               centos7a
83b4d5172a22   centos:7       "/bin/bash"          6 hours ago   Up 6 hours               centos7-2

Docker Container์— ์ƒˆ๋กœ์šด ์‰˜ ์‹คํ–‰ (exec)

$ docker container exec -it CONTAINER /bin/bash
$ docker exec -it CONTAINER /bin/bash

[์˜ˆ์‹œ]

[root@localhost ~]# docker container exec centos7a hostname
92bc18454b1c

 

[root@localhost ~]# docker container exec -it centos7a /bin/bash
[root@localhost ~]# docker container ls
CONTAINER ID   IMAGE          COMMAND              CREATED              STATUS              PORTS     NAMES
0e14a186aabf   httpd:latest   "httpd-foreground"   About a minute ago   Up About a minute   80/tcp    web5
92bc18454b1c   centos:7       "/bin/bash"          6 minutes ago        Up 6 minutes                  centos7a
83b4d5172a22   centos:7       "/bin/bash"          4 hours ago          Up 4 hours                    centos7-2

์œ„์˜ ์˜ˆ์‹œ์˜ ๊ฒฝ์šฐ์ฒ˜๋Ÿผ exec ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๊ณ  exit์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ์—์„œ ํ˜ธ์ŠคํŠธ๋กœ ๋น ์ ธ๋‚˜์™€๋„ ๊ณ„์† ์ปจํ…Œ์ด๋„ˆ  centos7a๊ฐ€ ์‹คํ–‰์ค‘์ž„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 

* attach ์™€ exec ๋ช…๋ น์–ด์˜ ์ฐจ์ด์ 

docker attach๋Š” ์ปจํ…Œ์ด๋„ˆ์— ์ง์ ‘ ์ ‘์† (๋ถ™์–ด์„œ = attach) ํ•ด์„œ ์ง์ ‘ ๋ช…๋ น ๋ฐ ์ œ์–ด๋ฅผ ํ•˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค. ๋ฐ˜๋ฉด docker exec๋Š” ์ปจํ…Œ์ด๋„ˆ ์™ธ๋ถ€์—์„œ ๋ช…๋ น์„ ์‹คํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ด๋‹ค. 

 

Docker Container ์‹คํ–‰์ค‘์ธ ํ”„๋กœ์„ธ์Šค ์ •๋ณด ํ™•์ธ (top)

docker container top CONTAINER

์ปจํ…Œ์ด๋„ˆ์—์„œ ์‹คํ–‰๋˜๋Š” ํ”„๋กœ์„ธ์Šค์˜ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ฆฌ๋ˆ…์Šค์˜ ps -ef ๋ช…๋ น์–ด์™€ ์œ ์‚ฌํ•œ ์ž‘๋™์„ ํ•œ๋‹ค. 

[์˜ˆ์‹œ] ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ web5์˜ ์‹ค์‹œ๊ฐ„ ํ”„๋กœ์„ธ์Šค ์ •๋ณด๋ฅผ ํ™•์ธํ•œ๋‹ค. 

[root@localhost ~]# docker container top web5
UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
root                15481               15462               0                   15:05               ?                   00:00:00            httpd -DFOREGROUND
33                  15507               15481               0                   15:05               ?                   00:00:00            httpd -DFOREGROUND
33                  15508               15481               0                   15:05               ?                   00:00:00            httpd -DFOREGROUND
33                  15509               15481               0                   15:05               ?                   00:00:00            httpd -DFOREGROUND

 

Docker Container Log ํ™•์ธ 

docker container logs CONTAINER

์ปจํ…Œ์ด๋„ˆ์˜ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. logs ๋ช…๋ น์–ด๋Š” ์ปจํ…Œ์ด๋„ˆ์˜ ๊ณผ๊ฑฐ ์‹คํ–‰ + ์‹คํ–‰ ๊ฒฐ๊ณผ ๊ธฐ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 

[์˜ˆ์‹œ] centos7-10 ์ปจํ…Œ์ด๋„ˆ์˜ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•œ๋‹ค. 

[root@localhost ~]# docker logs centos7-10
[root@164145c46559 /]# ls
anaconda-post.log  bin  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
[root@164145c46559 /]# echo "today is already wednesday" > file1
[root@164145c46559 /]# ls
anaconda-post.log  bin  dev  etc  file1  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
[root@164145c46559 /]# exit
exit

 

Docker Host์˜ ํŒŒ์ผ์„ Docker Container๋กœ ํŒŒ์ผ ๋ณต์‚ฌ

$ docker container cp HOST_PATH CONTAINER:/CONTAINER/PATH

[์˜ˆ์‹œ]

//Docker host์—์„œ file1์„ centos7a ์ปจํ…Œ์ด๋„ˆ์˜ /root ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๋ณต์‚ฌ 

[root@localhost ~]# docker cp file1 centos7a:/root

// ๋ณต์‚ฌ๊ฐ€ ์ž˜ ๋˜์—ˆ๋Š”์ง€ centos7a ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•ด์„œ ํ™•์ธ -> file1์ด ์žˆ์Œ์„ ํ™•์ธ ๊ฐ€๋Šฅ ! 

[root@localhost ~]# docker container exec -it centos7a /bin/bash
[root@92bc18454b1c /]# cd /root
[root@92bc18454b1c ~]# ls
anaconda-ks.cfg  file1
[root@92bc18454b1c ~]# ls -l
total 8
-rw-------. 1 root root 3416 Nov 13  2020 anaconda-ks.cfg
-rw-r--r--. 1 root root   37 Feb  1 06:43 file1
[root@92bc18454b1c ~]# cat file1
docker host to docker container file

 

Docker Container์˜ ํŒŒ์ผ์„ Docker Host๋กœ ํŒŒ์ผ ๋ณต์‚ฌ

docker cp CONTAINER:/CONTAINER/PATH DOCKER_HOST_PTH

[์˜ˆ์‹œ]

centos7a ์ปจํ…Œ์ด๋„ˆ์˜ /root/file2 ํŒŒ์ผ์„ ํ˜ธ์ŠคํŠธ์˜ ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๋ณต์‚ฌํ•˜์—ฌ ๊ฐ€์ ธ์˜ค๊ธฐ

[root@localhost ~]# docker cp centos7a:/root/file2 .

 

Docker Container์˜ ํŒŒ์ผ ๋ณ€๊ฒฝ์‚ฌํ•ญ ํ™•์ธ

์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ์ดˆ๊ธฐ ํŒŒ์ผ์—์„œ ์–ด๋–ค ํŒŒ์ผ๋“ค์ด ๋ณ€๊ฒฝ์ด ์ผ์–ด๋‚ฌ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด

$ docker container diff CONTAINER
$ docker diff CONTAINER

[์˜ˆ์‹œ]

[root@localhost ~]# docker container diff centos7a
C /root
A /root/.bash_history
A /root/file1
A /root/file2
  • A : ํŒŒ์ผ์ด ์ถ”๊ฐ€๋จ
  • C : ํŒŒ์ผ์ด ๋ณ€๊ฒฝ๋จ
  • D : ํŒŒ์ผ์ด ์‚ญ์ œ๋จ

๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋Š” union mount ํŒŒ์ผ์‹œ์Šคํ…œ์ด ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋ ˆ์ด์–ด๋กœ ์ด๋ฃจ์–ด์ ธ์žˆ๋‹ค. ๋˜ํ•œ ๋ณ€๊ฒฝ ๋‚ด์šฉ์ด ์ƒˆ๋กœ์šด ๋ ˆ์ด์–ด๋กœ ๊ธฐ๋ก์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์— trackingํ•˜๊ธฐ๊ฐ€ ๊ธฐ์กด์˜ ํŒŒ์ผ์‹œ์Šคํ…œ์ด ๋น„ํ•ด ์ƒ๋Œ€์ ์œผ๋กœ ์‰ฝ๋‹ค. 

728x90