ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Docker) Docker Container 명령어 실습해보기 2편
    Cloud/Docker 2022. 9. 30. 09:19
    실습 환경 : AWS console (2022/09), Visual Studio
    실습 목적 : Docker Container 명령어들을 알아보고 사용해보기

    Docker Container 생성,실행 (run)


    1.  run 명령어를 사용하여 이미지를 다운로드, 생성, 실행을 일괄 수행한다.

    docker run -d --name webserver httpd
    # docker run [옵션] <image 이름> [container에서 동작할 명령어]

     # docker pull 명령 + docker create 명령 + docker start 명령을 차례로 입력한 것과 같은 결과를 수행한다.


    2.  -d 옵션을 사용하여 container를 백그라운드에서 실행하기

    docker run -it -d -h myubuntu --name ubuntu1804 ubuntu:18.04
    # docker run -it -d [옵션] <image 이름>

      # docker ps 로 확인 해보면 -d 옵션을 사용한 container는 UP 상태고, 사용하지 않은 container는 Exited 상태로 표시된다.


    3. -p 옵션을 사용하여 외부접속을 허용한다.

    # 1. 포트를 지정한 httpd
    docker run -d -p 80:80 --name webserver-httpd httpd
    # docker run -d p <host포트>:<container포트> [옵션] <image 이름>
    
    # 2. 포트를 지정하지 않은 nginx
    docker run -d --name webserver-nginx nginx

      # 포트를 지정한 httpd는 외부에서 퍼블릭 IP로 접속하면 결과 화면이 나타난다.

     # 포트를 지정하지 않은 nginx는 포트포워딩이 되어있지 않아서 결과를 확인할 수 없다.




    Docker Container 목록 (ls,ps)


    1.  실행중인 container 목록을 출력한다.

    docker container ls
    docker container ps
    docker ps

    2.  -a 옵션을 사용하여 생성/종료된 container 모두 출력한다.

    docker ps -a
    docker container ps -a



    Docker Container 명령실행 (exec)


    docker exec -it ubuntu3 bash
    # docker exec [옵션] <container ID 또는 NAMES> bash

      # 동작중인 container에 명령을 실행한다.




    Docker Container 일시정지 (pause)


    docker container pause <container ID 또는 NAMES>
    docker pause <container ID 또는 NAMES>
     
      # 동작중인 container를 일시정지한다.


    Docker Container 일시정지 해제 (unpause)


    docker container unpause <container ID 또는 NAMES>
    docker unpause <container ID 또는 NAMES>


    Docker Container 재시작 (restart)


    docker restart <container ID 또는 NAMES>​



    Docker Container 복사 (copy)


    docker cp index.html webserver:usr/share/nginx/html/index.html
    # docker cp <원본 파일> <container ID 또는 NAMES>:<복사위치 및 파일이름>

      # host에 있는 파일을 container의 지정된 위치에 복사한다.




    Docker Container 세부정보 (inspect)


    docker container inspect <container ID 또는 NAEMS)

      # container의 세부정보를 확인할 수 있다.

    (검색 활용1) 

    docker container inspect <container ID 또는 NAMES> | grep [key]

      # inspect 결과에 대하여 pipe와 grep을 활용하여 검색


    (검색 활용2)

    docker container inspect webserver --format "{{key}}"

      # --format 옵션을 이용하여 원하는 내용 검색




    Docker Container 로그 (log)


    docker container logs [옵션] <container ID 또는 NAMES>

      #  container log 정보를 출력한다.
      #  -t 옵션을 사용하면 시간의 흐름에 따른 log 정보를 출력한다.




    Docker Container 자원 회수(prune)


    docker system prune

      # 실행중인 container를 제외한 회수 가능한 자원을 회수한다.




    참고 자료

    1. run 명령 옵션
      • -i : 대화식 모드 사용
      • -t : tty(단말 디바이스)사용
      • -d : 백그라운드에서 컨테이너 실행, container를 데몬 프로세스로 생성
      • --name <container 이름> : container 이름 부여
      • -h <host 이름> : container 내부 host이름 부여
      • --rm : container가 종료되면 container를 바로 삭제
      • -p <host 포트>:<container 포트> : host 포트와 container 포트연결 (포트 포워딩)
      • -v <host 경로>:<container 경로> : host 경로와 container 경로의 공유볼륨 설정
      • -e <환경변수 이름>=<값> : container 내의 환경변수 등록
      • --net=<네트워크 이름> : container를 네트워크에 연결

     

    1. docker ps 출력내용
      • CONTAINER ID : container생성시 부여된 임의의 ID, 64자리
      • COMMAND : container생성시 실행한 명령
      • STATUS : 현재 container 상태
      • NAMES : 임의로 부여된 container이름, container생성시 사용자가 이름을 지정할 수 있다.
      • PORTS : container port forward 정보
      • CREATED : container생성 시간
      • IMAGE : container생성시 사용한 image


    댓글

Designed by Tistory.