취미가 좋다
[1-1] Docker 튜토리얼 본문
도커란 원하는 프로그램을 쉽게 실행하기 위한 플랫폼
도커의 구성요소
docker image & container
- image는 어플리케이션을 실행하기 위한 필요한 모든 것이 생성되어 있는 파일입니다.
- container는 image를 사용하여 실행한 것입니다. 프로세스의 독립성을 보장하기 위해서 네트워크나 저장소가 분리되어 있습니다.
docker registry
- docker image를 저장하는 공간
dockerd
- docker API requests를 받아서 docker object(image, container등)를 관리
docker client
- 사용자가 docker를 사용하기 위해서 사용하는 cli
간단한 어플리케이션을 Docker로 실행해보기
docker run
docker run [options] {image_name} [command]
위는 docker run의 기본 문법이다.
docker run -d -p 80:80 docker/getting-started
위의 명령어로 Registry(도커허브)에서 도커 이미지를 가져와서 도커 컨테이너를 띄운다.
브라우저 주소창에 localhost를 입력하면 도커를 시작하는 페이지가 나온다.
-d : 컨테이너를 백그라운드로 실행
-p : 컨테이너의 포트와 호스트의 포트를 연결
docker ps
현재 실행되고 있는 컨테이너의 상태를 볼 수 있다.
COMMAND : 컨테이너를 실행시킬 때 준 커맨드. 위 사진의 적혀 있는 커맨드는 이미지 내에서 넣어준 커맨드
-a 옵션을 주면 실행되고 있지 않는 컨테이너도 볼 수 있다.
docker stop/kill
docker stop {container_id|conatinaer_name}
stop은 SIGTERM 이라는 신호를 보내고, kill은 SIGKILL 이라는 신호를 보낸다.
stop 은 어플리케이션이 끝날 때 정리를 해야할 것들이 있다면, 그 시간을 보장해준다.
컨테이너 아이디나 이름으로 컨테이너를 지정한다.
docker restart
멈춰져 있는 컨테이너를 다시 실행시킨다.
stop, kill 과 동일하게 컨테이너 아이디나 이름으로 컨테이너를 지정한다.
docker exec
docker exec [options] {container_id|container_name} [command]
실행중인 컨테이너에 커맨드를 날려서 컨테이너가 잘 돌아가고 있는지 확인하는 명령어이다.
ls 와 같은 커맨드를 컨테이너에 날려서 파일 목록을 볼 수 있다.
docker exec -ti 1234 sh
위 명령어를 통해 컨테이너 안에서 쉘 스크립트를 사용할 수 있다.
쉘은 exit 커맨드로 나갈 수 있다.
-i : interactive 옵션. 쉘 스크립트를 쓰기 위해 로컬 호스트의 입력을 컨테이너 내에서도 쓸 수 있도록 한다.
-t : tty. 터미널 환경을 만들어준다.
docker rm
삭제할 컨테이너를 아이디와 이름으로 지정한다.
실행되고 있는 컨테이너는 삭제할 수 없으니 stop or kill을 통해 멈춰준다.
'Sparta Coding Club > Docker' 카테고리의 다른 글
[2-3] 여러 컨테이너 연결 (0) | 2021.07.30 |
---|---|
[2-2] 원하는 volume을 컨테이너에 연결하기 (0) | 2021.07.30 |
[2-1] 컨테이너의 데이터를 유지 (0) | 2021.07.30 |
[1-3] 어플리케이션 공유하기 (0) | 2021.07.30 |
[1-2] flask 어플리케이션을 도커로 실행해보기 (0) | 2021.07.29 |