728x90
<Docker 이미지 / 컨테이너관리 및 모니터링>
<이미지 레이어 상세 정보확인>
- docker image inspect
ubuntu@host1:~$ docker image inspect noderun:1.0
[
{
"Id": "sha256:d77d5ca0759f617e8b58f55f8663ccfab8dcb5a91b8ea436a2ef72d2c3637c75",
"RepoTags": [
"noderun:1.0"
],
"RepoDigests": [],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2024-01-12T15:06:22.590946289+09:00",
"Container": "",
"ContainerConfig": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": null,
"Cmd": null,
"Image": "",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": null
},
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"6060/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"NODE_VERSION=20.10.0",
"YARN_VERSION=1.22.19"
],
"Cmd": [
"node",
"runapp.js"
],
"ArgsEscaped": true,
"Image": "",
"Volumes": null,
"WorkingDir": "/app",
"Entrypoint": [
"/sbin/tini",
"--"
],
"OnBuild": null,
"Labels": null
},
"Architecture": "amd64",
"Os": "linux",
"Size": 138195448,
"VirtualSize": 138195448,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/5is04njm3v22ntznhraiafbwe/diff:/var/lib/docker/overlay2/5fq5jijqwdg5bd6lzdso18nsj/diff:/var/lib/docker/overlay2/c457d5675559d3a00b530dc8a8f67ab6165e2a51ab5e1f68596bd61c43640f1f/diff:/var/lib/docker/overlay2/fbdb2ea6a075c1258ad99903f5d6991e87d7a0ad8b3051bac617c23b7fce489f/diff:/var/lib/docker/overlay2/24431429ca0ec3e5f728af16f02f9d0a4addd1146ab5e73931b861c6c01f6ac9/diff:/var/lib/docker/overlay2/a1143a56d306a3158aefff22ce2449742ce3838ea2c7c75c44e10ca76a143aaa/diff",
"MergedDir": "/var/lib/docker/overlay2/ph5kr1yf2keay0sugjy8tcyiz/merged",
"UpperDir": "/var/lib/docker/overlay2/ph5kr1yf2keay0sugjy8tcyiz/diff",
"WorkDir": "/var/lib/docker/overlay2/ph5kr1yf2keay0sugjy8tcyiz/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:617df26c9e2bec4e63eed45acaa78b253ac74e1cd0dd74da35b050f3ef707d47",
"sha256:adc99b871e1510bf40eeaf5d2b126d13023a8d80c06b17f26bf0c6405897dbd4",
"sha256:5ffdd8016f562a858fcd4935706183d7296f539e7edbbf4b6a59cab93ba09caa",
"sha256:9e07a17fe742080c4e44ee090e15ac2f639e80715cad77160561ab9bba8c32a0",
"sha256:f944519cc916047c783478fdc8d923e9166e3d99fe65f365d889ddd824b4f23f",
"sha256:9490a08daae5de603c3d4b0cf2d3a1eb780fae9a8476395c54d82ead8aae49d2",
"sha256:f25b7a274c7de8a4e5bb450fe518518ea114de76ce882effbdbc3b24286c7aee"
]
},
"Metadata": {
"LastTagTime": "2024-01-12T15:06:22.704448228+09:00"
}
}
]
<특정 이미지 레이어 확인 방법>
ubuntu@host1:~$ docker image inspect --format="{{.Os}}" httpd:2.4
linux
ubuntu@host1:~$ docker image inspect --format="{{.RepoTags}}" httpd:2.4
[httpd:2.4]
<이미지 제작 히스토리 명령어>
- docker image history
ubuntu@host1:~$ docker image history noderun:1.0
IMAGE CREATED CREATED BY SIZE COMMENT
d77d5ca0759f 2 days ago CMD ["node" "runapp.js"] 0B buildkit.dockerfile.v0
<missing> 2 days ago ENTRYPOINT ["/sbin/tini" "--"] 0B buildkit.dockerfile.v0
<missing> 2 days ago EXPOSE map[6060/tcp:{}] 0B buildkit.dockerfile.v0
<missing> 2 days ago COPY runapp.js . # buildkit 317B buildkit.dockerfile.v0
<missing> 2 days ago WORKDIR /app 0B buildkit.dockerfile.v0
<missing> 2 days ago RUN /bin/sh -c apk add --no-cache tini curl … 2.36MB buildkit.dockerfile.v0
<missing> 6 weeks ago /bin/sh -c #(nop) CMD ["node"] 0B
<missing> 6 weeks ago /bin/sh -c #(nop) ENTRYPOINT ["docker-entry… 0B
<missing> 6 weeks ago /bin/sh -c #(nop) COPY file:4d192565a7220e13… 388B
<missing> 6 weeks ago /bin/sh -c apk add --no-cache --virtual .bui… 7.76MB
<missing> 6 weeks ago /bin/sh -c #(nop) ENV YARN_VERSION=1.22.19 0B
<missing> 6 weeks ago /bin/sh -c addgroup -g 1000 node && addu… 121MB
<missing> 6 weeks ago /bin/sh -c #(nop) ENV NODE_VERSION=20.10.0 0B
<missing> 6 weeks ago /bin/sh -c #(nop) CMD ["/bin/sh"] 0B
<missing> 6 weeks ago /bin/sh -c #(nop) ADD file:80331a5d882ac8a70… 7.06MB
<컨테이너 상태 및 로그 모니터링>
1. docker container top: 사용 중인 프로세스 확인
2. 포트 확인
- ps -f | grep (포트 번호)
- docker container port (컨테이너 이름): 포트 바인딩 확인 가능
3. docker container status (컨테이너 이름): 실시간으로 업데이트되어 서버 모니터링 가능
4. cadvisor 컨테이너
<컨테이너 구축>
ubuntu@host1:~$ docker pull gcr.io/cadvisor/cadvisor:latest
<컨테이너 활성화>
docker run \\
--restart=always \\
--volume=/:/rootfs:ro \\
--volume=/var/run:/var/run:rw \\
--volume=/sys/fs/cgroup:/sys/fs/cgroup:ro \\
--volume=/var/lib/docker/:/var/lib/docker:ro \\
--volume=/dev/disk/:/dev/disk:ro \\
--publish=9559:8080 \\
--detach=true \\
--name=cadvisor \\
--privileged \\
--device=/dev/kmsg \\
gcr.io/cadvisor/cadvisor:latest
<포트 9559로 접속해 확인>
5. docker container logs: 로그 기록 확인
- mysql:5.7-debian 컨테이너를 대상으로 로그 확인
ubuntu@host1:~$ docker container logs mydb
<로그 기록 확인 가능>
- docker container logs -f: 로그를 출력하고 프로세스를 종료하는 것이 아니라 계속해서 로그를 추적
ubuntu@host1:~$ docker container logs -f noderun
Your Connected.
Your request arrived.
Your Connected.
Your request arrived.
Your Connected.
Your request arrived.
Your Connected.
Your request arrived.
Your Connected.
Your request arrived.
Your Connected.
Your request arrived.
Your Connected.
Your request arrived.
Your Connected.
Your request arrived.
<컨테이너 변경 사항 확인>
- docker container diff (컨테이너 이름)<레이어 상세 정보 확인>
'클라우드 + DevOps > Docker' 카테고리의 다른 글
Docker 네트워크 관련 설정 명령어 모음 (0) | 2024.02.17 |
---|---|
Docker 실습 :: Docker 이미지 수정과 적용 (0) | 2024.02.14 |
Docker 실습 :: Image 삭제 방법 (0) | 2024.02.12 |
Docker 실습 :: Docker hub / scp 명령어를 이용한 Image 전송 방법 (1) | 2024.02.11 |
Docker 실습 :: 호스트네임 알려주는 컨테이너 생성 (1) | 2024.02.10 |