인프라

2. 도커 기본 명령어

오늘의 나1 2021. 3. 2. 21:41

도커 이미지와 도커 컨테이너

도커 이미지를 실행하여 도커 컨테이너(이하 컨테이너)를 만든다.
컨테이너의 볼륨, 네트워크는 격리되어 호스트에 영향을 끼치지 않는다.

도커 기본 명령어

도커 버전 확인

$ docker -v
Docker version 18.09.2, build 6247962

컨테이너 실행

run

$ docker run -i -t ubuntu:14.04 # 우분투 이미지로 우분투 컨테이너를 만들어 실행
  • docker pull(저장소에서 이미지 pull) + create(이미지로부터 컨테이너 생성) + start(컨테이너 시작) + attach(컨테이너 내부로 이동)
  • -i, -t: 컨테이너와 상호입출력을 가능하게 함
$ docker run -d \
--name wordpressdb \
-e MYSQL_ROOT_PASSWORD=password \
-e MYSQL_DATABASE=wordpress \
mysql:5.7

$ docker run -d \
-e WORDPRESS_DB_PASSWORD=password \
--name wordpress \
--link wordpressdb:mysql \
-p 80 \
wordpress
  • --name: 컨테이너 이름 지정
  • -e: 환경변수 지정
  • --link: 연결하고자 하는 컨테이너의 별명 지정
    • --link wordpressdb:mysql: wordpress 컨테이너를 wordpressdb와 연결, wordpress 컨테이너 셸에서 wordpressdb의 별명을 mysql로 지정

컨테이너 목록 확인

  • docker ps: 실행 중인 컨테이너 목록 확인
  • docker ps -a: 모든 컨테이너 목록 확인

컨테이너 셸안에서 빠져나오기

컨테이너 종료하고 컨테이너 셸 안에서 빠져나오기: exit 또는 ctrl + D
$ docker run -i -t ubuntu:14.04
root@339fedf9ef91: /$ exit
컨테이너 종료하지 않고 컨테이너 셸 안에서 빠져나오기: ctrl + P, Q
$ docker run -i -t ubuntu:14.04
root@339fedf9ef91: /$ ctrl + P, Q

컨테이너 종료

$ docker stop wordpressdb

컨테이너 삭제

$ docker rm wordpressdb
  • 종료된 컨테이너를 삭제하는 것이 좋다

기타 명령어

  • docker port: 컨테이너와 연결된 호스트 포트 확인
  • docker images: 호스트에 다운로드된 이미지 목록 확인
  • docker rename ${현재 컨테이너명} ${바꿀 컨테이너명}: 컨테이너 이름 변경

도커 사용 시 주의할 점

  • 도커 버전 맞춰서 작업하기: 버전이 맞아 명령어가 실행되지 않는 경우가 있다
  • 한 컨테이너에 애플리케이션을 하나만 동작시키기:
    • 컨테이너 독립성을 보장합과 동시에 애플리케이션의 버전관리, 소스코드 모듈화 등이 쉬워짐.
    • 한 컨테이너에 프로세스 하나만 실행하는 것이 도커의 철학

'인프라' 카테고리의 다른 글

9. DockerFile  (0) 2021.03.14
7. 도커 이미지  (0) 2021.03.03
4. 도커 네트워킹  (0) 2021.03.02
3. 도커 볼륨  (0) 2021.03.02
1. 도커란  (0) 2021.02.21