본문 바로가기
Linux/Docker

도커(docker) 기본 명령어, 사용 예시

by 시바도지 2023. 10. 24.
반응형

이번 장에서는 도커의 기본 명령어에 대해 설명하려고 한다.

해당 게시글을 읽고 나면 어디가서 도커를 조금 쓸 수 있다고 말할 수 있을 것이다.

 

도커 기본 명렁어


1. docker run [옵션] {이미지 이름}

  • container(격리 환경 프로세스) 실행

2. docker commit [컨테이너 이름] [원하는 이미지 이름:태그]

  • 실행 중인 container의 상태를 이미지로 저장

3. docker images

  • docker 이미지 목록 확인
  • docker commit으로 생성한 이미지가 정상적으로 잘 생성되었는지 확인한다.

4. docker save [옵션] {파일 이름}

  • 도커 이미지를 파일 형태(tar.gz)로 저장
  • docker commit과의 차이점은 docker commit은 이미 실행 중인 상태를 image로 저장하는 것이고, docker save는 그 image를 파일 형태로 추출하는 명령어다.
  • 사용 예시) A가 B에게 이미지를 달라고 하면 A는 `docker save image ./myImg.tar` 명령어로 파일을 만들어서 B에게 건네준다.

5. docker load [옵션] {파일 이름}

  • docker save로 받은 파일의 image를 추출한다.
  • 사용 예시) B는 A에게 받은 myImg.tar 파일을 `docker load -i myImg.tar` 명령어로 이미지를 추출한다.

6. docker ps

  • 현재 실행중인 컨테이너 출력
  • -a 또는 -all 옵션을 주면 실행 중이거나 멈춘 컨테이너를 모두 표시해준다.

7. docker stop {컨테이너 이름}

  • 해당 컨테이너 사용 종료

8. docker rm {컨테이너 이름}

  • 해당 컨테이너 삭제

 

 

docker run 자주 사용하는 옵션


docker run [options] {image}:{tag} [command] [args]

* [ ](대괄호) 내에 있는 것은 반드시 쓰지 않아도 된다.

 

 

1. -it

  • -i 와 -t 옵션을 동시에 적용한 것이다.
  • i는 입력을 가능하게 설정, t는 입/출력 기본 환경을 설정
  • -i 는 컨테이너 내에서 표준 입력(stdin)을 사용한다. 무슨 뜻인가 하면 우리가 키보드로 입력하는 것을 입력되게 하겠다는 말이다. 만약 이것을 하지 않는다면 키보드로 입력하는 것을 못하게 된다.
  • -t 는 컨테이너 내에서 tty 터미널을 사용한다. tty는 컴퓨터를 사용하기 용이하게 구성해둔 기본 환경이라고 생각하면 된다. 

2. -p

  • 호스트 포트랑 컨테이너 포트를 연결한다.(포트 포워딩)
  • 사용 방법) -p {host port}:{container port}
  • port는 보통 밖에서 접근하려 할 때 사용하는데, 도커 컨테이너도 서버 밖에서 접근할 때 사용한다.
  • 사용 예시) host port는 55555, container port는 22일 떄
docker run -it -p 55555:22

이렇게 하면 다른 컴퓨터에서 ssh로 이 컨테이너에 접속할 때, 포트 번호를 55555를 주면 컴퓨터는 컨테이너 내의 22번 포트로 ssh 접속을 시켜준다.

 

3. -v

  • -volume을 줄여서 표현한 옵션이다.
  • 컨테이너 내에서 서버 내에 있는 디렉토리를 보고 싶을 때 사용한다.
  • 사용 방법
docker run -it -v {host dir}:{container dir}
  • 사용 예시)
    • 내 컴퓨터에서 `user/독수리` 폴더를 통해 컨테이너의 `workspace/bird` 디렉토리를 보고 싶다면
docker run -it -c user/독수리:/workspace/bird

이것은 컨테이너를 만들 때 복사해서 오는 것이 아니라 실제 디스크 상에서 같은 곳을 보고 있는 것이다.

만약 `user/독수리`에서 파일을 삭제한다면 `workspace/bird`에 있는 파일도 삭제된다.

 

4. --name {컨테이너 이름}

  • 컨테이너 이름을 설정한다.
  • 컨테이너를 구별할 때나 이 컨테이너를 지정할 때 name 옵션에서 준 이름을 사용할 수 있다.
  • 사용 예시
docker run -it --name uhmJunsik

 

반응형

댓글