[k8s] 컨테이너 실행 명령어 종류

2022. 10. 28. 19:45·스터디/Cloud & k8s
728x90

Docker Container를 사용하다보면 명령어를 많이 사용하게됩니다. 보통 docker 명령어를 통해서 이미지를 실행 또는 stop을 할 수 있는데요, 기본적인 명령어 외에 어떤 명령어가 있는지 알아보도록합니다.


도커 컨테이너 (Docker Container)

도커 이미지를 통해서 도커 컨테이너를 생성 할 수 있습니다. 이전에도 설명드렸듯이 컨테이너는 이미지를 실체화한 것으로 이해 할 수 있는데요, 비유를 들자면

 

이미지 = 붕어빵틀

컨테이너 = 붕어빵

 

으로 이해할 수 있습니다. 즉 이미지 하나로 여러개의 컨테이너를 생성할 수 있는 것이죠.

자세한 도커 컨테이너 설명은 아래 포스팅을 참고하세요.

 

[k8s] 컨테이너(Container)와 쿠버네티스(Kubernetes) 소개

컨테이너(Container) 컨테이너는 어떤 환경에서나 실행하기 위해 필요한 모든 요소를 포함하는 소프트웨어 패키지이다. 이러한 방식으로 운영체제를 가상화여 프라이빗 퍼블릭 클라우드 또는 개

hyeri0903.tistory.com

컨테이너 생성

docker run ${image name}

docker run ${image_name} 명령어로 컨테이너를 생성할 수 있습니다. run 명령어로 실행한 컨테이너는 명령이 끝나거나 사용자의 명령에 따라 종료됩니다.

 

예를들자면

$ docker run ubuntu echo "hello"
hello

화면에 hello 라는 메시지만 출력하고 컨테이너는 종료됩니다.  컨테이너는 자신이 수행 할 명령어를 모두 수행했기 때문에 hello라는 메시지만 출력하고 종료되는 것입니다.

 

컨테이너 목록 조회

$ docker ps -a

docker ps -a 명령어를 통해 컨테이너의 상태 여부 및 목록을 조회할 수 있습니다.

위 명령어를 실행하면 모든 컨테이너를 출력하여 status 확인이 가능합니다.

-a 옵션을 주어 모든 컨테이너를 조회합니다.

 

컨테이너 시작/재시작/정지

아래와 같은 명령어로 컨테이너를 시작, 재시작, 정지할 수 있습니다.

 

$ docker start ${container_name}
$ docker restart ${container_name}
$ docker stop ${container_name}

컨테이너 접속

현재 실행중인 컨테이너에 접속하기 위한 명령어는 docker attach로 수행 가능합니다.

$ docker attach ${container_name}

 

외부 -> 컨테이너 내부 명령 실행

 

docker exec 명렁어로 컨테이너 밖에서 컨테이너 안의 명령어를 수행 가능합니다.

 

$ docker exec ${container_name} {command}

exec 명령어는 현재 실행 중인 컨테이너에만 적용가능하며 중지 상태의 컨테이너에는 적용 불가능합니다.

현재 실행중인 컨테이너는 docker ps -a 명령어를 통해 status를 확인하여 알 수 있습니다.

 

 

컨테이너 삭제

rm 명령어로 컨테이너를 삭제할 수 있습니다. 참고로 이미지 삭제는 rmi 입니다.

 

$ docker rm ${container_name}
$ docker rmi ${image_name}

모든 컨테이너와 이미지를 한 번에 삭제하고 싶으면 rm -f 옵션을 사용할 수 있습니다.

단, 이미지를 사용중인 컨테이너가 있다면 이미지 삭제가 불가능합니다. 따라서 모든 컨테이너 삭제 후 이미지를 삭제합니다.

$ docker rm -f $(docker ps -aq)
$ docker rmi $(docker images -q)

(주의: 삭제한 이미지는 복구 불가능합니다.)

 

 

이 외에도 다양한 명령어가 있습니다. 다음에 또다른 명령어에 대해서 포스팅하도록 하겠습니다.

 

 

 


참고:

 

컨테이너 실행 명령어 · snowdeer's Code Holic

컨테이너 실행 명령어 03 Jan 2018 | Docker Docker Container Docker 컨테이너는 Docker 이미지로부터 생성할 수 있습니다. 이미지 하나로부터 동일한 컨테이너를 여러개 생성할 수 있으며, 각 컨테이너는 샌

snowdeer.github.io

 

docker rmi 사용법: Docker 이미지를 삭제하는 방법

docker rmi 명령어로 이미지를 삭제할 수 있습니다. 이 글에서는 특정 Docker 이미지나 사용하지 않는 이미지들을 일괄 삭제하는 방법을 알려드립니다.

www.lainyzine.com

 

728x90

'스터디 > Cloud & k8s' 카테고리의 다른 글

[k8s] Container 환경에서 JVM GC (Garbage Collection) 확인하기  (0) 2023.08.25
[k8s] Helm과 Chart 란? (쿠버네티스 패키지 매니저)  (0) 2022.11.01
[k8s] 쿠버네티스 오브젝트(Kubernetes Objects) 종류  (0) 2022.10.19
[k8s] 컨테이너 오케스트레이션 (Container orchestration)  (0) 2022.10.10
[k8s] 워크로드(workload)와 파드(pod), 도커(docker)  (0) 2022.10.02
'스터디/Cloud & k8s' 카테고리의 다른 글
  • [k8s] Container 환경에서 JVM GC (Garbage Collection) 확인하기
  • [k8s] Helm과 Chart 란? (쿠버네티스 패키지 매니저)
  • [k8s] 쿠버네티스 오브젝트(Kubernetes Objects) 종류
  • [k8s] 컨테이너 오케스트레이션 (Container orchestration)
zoodi
zoodi
IT/개발 관련 지식을 기록하는 블로그입니다.
  • zoodi
    오늘의 기록
    zoodi
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 후기
        • 컨퍼런스
        • 일상리뷰
      • 금융경제
        • 뉴스
        • 금융IT용어
        • 경제 및 부동산
      • 코딩 테스트
      • 스터디
        • JAVA
        • Kotlin
        • Spring
        • React, Nextjs
        • 인공지능 AI
        • Cloud & k8s
        • Kafka
        • Database
        • Network
        • Algorithm
        • Hadoop
        • LINUX
        • R Programming
        • 기타 (소공, 보안)
      • 도서
      • 기타
  • 블로그 메뉴

    • 홈
    • 스터디
    • 금융경제
    • 후기
    • 기타
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Spring
    리트코드
    Python
    알고리즘
    금융용어
    코딜리티
    C++
    코테
    pythoncodingtest
    코테공부
    프로그래머스
    카카오코테
    springboot
    java
    코딩
    codility
    네트워크
    이분탐색
    LeetCode
    MySQL
    스프링
    자바
    db
    코딩테스트
    스프링부트
    Kotlin
    자료구조
    쿠버네티스
    CodingTest
    kafka
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
zoodi
[k8s] 컨테이너 실행 명령어 종류
상단으로

티스토리툴바