Cloud/Docker

Docker) Docker Container 명령어 실습해보기 1편

Adım Kim 2022. 9. 30. 01:05
실습 환경 : AWS console (2022/09), Visual Studio
실습 목적 : Docker Container 명령어들을 알아보고 사용해보기

Docker Container

  • Docker container는 격리된 환경에서 동작하는 Linux 프로세스다.
  • Docker container 프로세스는 Linux 프로세스로서 관리되지만, 완전 격리된 프로세스로 동작하며 host 시스템의 kernel 기능을 공유한다.
  • Docker container는 격리된 프로세스이므로 PID는 1번 PID를 갖는다.
  • Docker container의 생성은 application 실행과 같은 의미다.
 -  docker container의 생성주기

    1. docker image 생성 (build)
    2. docker container 생성 (create)
    3. docker container 실행 (start)
    4. docker container 중지 (stop)
    5. docker container 삭제 (remove)


Docker Container 생성 (create)


1.  docker image 확인 및 생성

docker images
docker create mysql:5.7
# docker create [옵션] <image이름>

  # 이미지의 버전과 이름과 버전 확인 후, <image이름>에 알맞게 입력한다.


2. docker image 생성 - Name 설정

docker create --name test-mysql mysql:5.7
# docker create [옵션] --name <docker이름> <image이름>

  # --name 옵션에 설정할 이름을 입력한다. 이름을 입력하지않으면 임의의 이름이 부여된다.


3. 대화식 사용가능한 docker image 생성

docker create -it --name test-mysql2 mysql:5.7
# docker create -it [옵션] <image이름>

  # 컨테이너를 생성하고 실행할 때, 사용자 상호작용과 터미널 사용이 필요한 경우, it 옵션을 사용한다.
  # -i 옵션은 대화식 모드 사용을, -t 옵션은 tty(단말 디바이스) 사용을 설정한다.
  # 이 두 옵션이 대화식을 사용할 수 있는 환경을 제공한다.




Docker Container 실행 (start)


1.  container ID로 실행

docker start 25d6
# docker start <container id 앞4자리>

2. container Name으로 실행

docker start test-mysql
# docker start <container NAEMS>



Docker Container 접속 (attach)


1.  동작중인 container에 접속하기

docker attach myubuntu
# docker attach <container ID 또는 NAMES>

  # 생성되어 동작중인 container에 접속한다.
  # attach로 container에 진입한 상태에서 container를 실행상태를 유지하면서 빠져나오는 방법 : ctrl + p + q
  # attach로 container에 진입한 상태에서 container를 중지하고 빠져나오는 방법 : ctrl + d




Docker Container 중지 (stop)


docker stop webserver
# docker stop <container ID/NAMES>

  # 동작중인 contianer를 중지시킨다.




Docker Container 삭제 (remove)


1.  중지된 container를 삭제하기
   
docker container rm 25d6
docker container rm test-mysql1
docker container rm test-mysql
# docker container rm <container ID 또는 NAMES>

  # 실행중인 container는 삭제할 수 없다. 실행중인 containers를 docker stop 명령으로 중지 후에 삭제해야 한다.


2. container 실행에 상관없이 삭제하기

docker rm -f <container ID 또는 NAMES>

  # 실행중인 container를 강제로 삭제하려면 f 옵션을 사용한다.


3.  중지된 container를 모두 삭제하기

docker rm $(docker ps --filter 'status=exited' -a -q)



참고 자료

  1. docker 명령어 확인해보기
    • https://docs.docker.com/reference/ 접속
    • 왼쪽 메뉴에서 Command-line reference 선택 -> Docker CLI 선택 -> 원하는 명령어 선택
    • 또는 상단 찾기창에서 원하는 명령어 검색