본문 바로가기
Docker/실습

[Docker-실습] 6.Container 운영

by Haengsin 2021. 8. 27.

[컨테이너 운영 명령어 사용]

(1) 이미지 검색

$ docker search nginx

- Official 이미지를 사용하거나, 직접 만들어서 사용하자. (보안)

 

 

(2) 도커 이미지 다운로드

$ docker pull nginx:1.14

$ docker pull mysql

 

(3) 다운 받은 이미지 확인

$ docker images

$ docker images --no-trunc

: 이미지 명을 풀네임으로 출력하는 옵션

 

 

(4) 컨테이너 생성

docker create 명령어의 경우, 기본적으로 백그라운드로 실행

$ docker create --name websvt ningx:1.14

: latest 버전이 아닌 경우 태그 생략 안 됨.

$ docker ps -a

해당 컨테이너를 RUN 하게 되면 COMMAND "nginx -g daemon of ..." 을 통해 컨테이너를 실행하게 된다.

그냥 옵션 없이 docker ps 사용 시에는 running 중인 컨테이너만 출력된다.

 

 

(5) 컨테이너 시작

$ docker start websvt

 

(6) 컨테이너 세부정보 확인

$ docker inspect websvt

컨테이너 이미지에 대하여 이미지 정보, 네트워크 정보, 리소스 할당 정보, 볼륨 마운트 등을 포함한 세부 정보들을 확인할 수 있다.

 

$ docker inspect --format '{{.NetworkSettings.IPAddress}}' websvt

옵션 --format 을 사용하여 원하는 항목만을 볼 수도 있다. (대소문자 구분)

 

※ alias [단축어명]="[명령어]"

- 자주 사용하는 명령어를 단축어로 등록해서 사용하면 좋다.

$ alias cip="docker inspect --format '{{.NetworkSettings.IPAddress}}'"

$ cip websvt

 

(7) 컨테이너 동작 확인

$ curl 172.17.0.5

 

(8) 컨테이너가 만들어 낸 로그 출력

$ docker logs websvt

$ docker logs -f websvt 

: 실시간으로 로그 확인

 

(9) 컨테이너에서 실행 중인 프로세스 정보 출력

$ docker top websvt

  • UID : 사용자 ID
  • PID : 프로세스 ID
  • PPID : 부모 프로세스 ID
  • C : CPU 사용량
  • STIME : 실행된 시간
  • TTY : 사용 중인 터미널
  • TIME : CPU 총 사용 누적 시간
  • CMD : Command

(10) 실행 중인 컨테이너에 직접 접속하여 배실 쉘 사용

$ docker exec -it websvt /bin/bash

-i : interactive

-t : terminal

nginx의 기본 index.html 위치는 /usr/share/nginx/html/ 디렉토리에 위치

 

$ echo "Jaewon's Homepage" > index.html

 

 

※ 이성미, [따배도] 도커 시리즈 , TTABAE-LEARN,https://www.youtube.com/watch?v=wrx-ixvtzxk&list=PLApuRlvrZKogb78kKq1wRvrjg1VMwYrvi&index=16, 2021-08-31