컨테이너를 실행해보자 [1]

Pak Heonjun·2023년 4월 20일
0

도커 명령어로 컨테이너를 다룬다

컨테이너 작업도커 엔진 명령어로 수행 한다.

컨테이너 작업도커 엔진 명령어로 수행 된다. 따라서 도커 엔진이 구동 중이어야 컨테이너 작업이 가능 하다. 윈도우 도커 데스크톱은 부팅 시 자동 실행되도록 기본 설정이 되어있고, 리눅스의 경우 도커 엔진이 자동 실행되도록 설정 가능하다.

일반적인 서버에서 도커 엔진을 정지시키는 경우는 없지만, 특정한 이유로 도커 엔진이 정지 된다면 내부에서 구동 중인 컨테이너는 모두 정지 된다.

Tip. 도커 엔진 구동/정지 및 자동 실행 설정

Window
구동 : 시작 메뉴에서 Docker Desktop 실행
정지 : 태스크 트레이에서 Docker Desktop 우클릭 후 Quit Docker Desktop
자동 실행 설정/해제 : 설정에서 Start Docker Desktop when you log in 체크/해제
Linux
구동 : sudo systemctl start docker
정지 : sudo systemctl stop docker
자동 실행 설정/해제 : sudo systemctl enable (or disable) docker

도커 명령어 기본 구조는?

도커 명령 기본 구조docker [무엇을] [~하자] [구체적 대상] 이다.

도커 명령의 기본 구조는 docker [무엇을] [~하자] [구체적 대상] 이다. 예를들어 아파치(httpd) 이미지로 컨테이너를 생성하는 명령어는 다음과 같다.

[root@host ~]# docker container create httpd

참고로 [무엇을]은 상위 커맨드, [~하자]는 하위 커맨드 이다. 하위 커맨드는 상위 커맨드에 따라 결정되며 자주 쓰이는 커맨드는 뒤에서 알아보자.

커맨드 에는 옵션, 구체적 대상 에는 인자 가 추가로 붙을 수 있다.

도커 명령에는 옵션, 인자 로 추가 정보를 넣을 수 있다. 순서는 docker [무엇을] [~하자] (옵션) [구체적 대상] (인자) 이다. 예를들어 container run 커맨드를 -d 옵션으로, httpd 이미지를 --mode=1 로 수행하는 명령은 다음과 같다.

[root@host ~]# docker container run -d httpd --mode=1

대표적인 명령어를 알아보자

  • 대표적인 상위 커맨드[무엇을] 은 container, image, volume, network 이다. 각 상위 커맨드와 관련된 하위 커맨드 목록을 정리해보자.

    • container 는 컨테이너 조작과 관련된 커맨드이다.

      하위 커맨드내용주요 옵션생략 시
      start컨테이너를 실행-i
      stop컨테이너를 정지
      create이미지로부터 컨테이너를 생성--name -e -p -v
      runimage pull + create + start--name -e -p -v -d -i -t
      rm정지 상태의 컨테이너 삭제-f -v
      inspect컨테이너의 상세 정보를 출력
      exec실행 중인 컨테이너 내부로 명령어를 전송-i -t
      ls컨테이너 목록 출력-adocker ps
      cp도커 컨테이너와 도커 호스트 간 파일을 복사
      commit컨테이너를 이미지로 변환
    • image 는 이미지 관련 기능을 실행하는 커맨드이다.

      하위 커맨드내용주요 옵션생략 시
      pull리포지토리에서 이미지를 내려받음
      rm도커 이미지를 삭제docker rmi
      ls내려받은 이미지 목록을 출력
      build도커 이미지를 생성-t
    • volume 는 볼륨 관련 커맨드이다. 볼륨컨테이너에 마운트 가능한 스토리지 이다.

      하위 커맨드내용주요 옵션생략 시
      create볼륨을 생성--name
      inspect볼륨의 상세 정보를 출력
      ls볼륨의 목록을 출력-a
      prune현재 마운트되지 않은 볼륨을 모두 삭제
      rm지정한 볼륨을 삭제
    • network 는 도커 네트워크 관련 커맨드이다. 도커 네트워크도커 요소 간의 통신에 사용되는 가상 네트워크 이다.

      하위 커맨드내용주요 옵션생략 시
      connect컨테이너를 도커 네트워크에 연결
      disconnect컨테이너의 도커 네트워크 연결을 해제
      create도커 네트워크를 생성
      inspect도커 네트워크의 상세 정보를 출력
      ls도커 네트워크 목록을 출력
      prune현재 컨테이너가 접속하지 않은 네트워크를 모두 삭제
      rm지정한 네트워크을 삭제
  • 도커 허브의 검색이나 로그인에 사용되는 단독 커맨드도 존재한다.

    단독 커맨드내용주요 옵션
    login도커 레지스트리에 로그인-u -p
    logout도커 레지스트리에서 로그아웃
    search도커 레지스트리 검색
    version도커 엔진 및 명령행 도구 버전 출력
profile
more more

0개의 댓글