이번 게시글에서는 본격적으로 명령어에 대해서 설명합니다. 그러나 글쓴이는 도커에 어느 정도 친숙한 관계로 명령어에 대해 자세하게 설명하기 보다는 명령어와 관련된 잘 알지 못하는 개념적인 내용을 주로 다룹니다.
그림과 실습으로 배우는 도커 & 쿠버네티스 - 네 번째 이야기
도커의 명령어
위의 목차를 클릭하면 해당 글로 자동 이동 합니다.
도커 엔진의 시작, 종료
- 컨테이너를 실행 중이 아니라면, 도커 엔진은 컴퓨터의 리소스를 거의 차지하지 않으므로 굳이 종료하지 않아도 문제가 없다.
- 도커 엔진은 자동으로 실행되지만 컨테이너는 자동 실행되지 않는다.
- 예기치 못한 상황으로 인해 호스트가 재부팅되는 경우 컨테이너를 자동 실행하기 위해서는 스크립트가 필요하다.
- 도커 엔진을 자동 실행하도록 설정하는 명령어는 아래와 같다.
sudo systemctl enable docker
- 컨테이너를 다루는 명령어는 'docker' 로 시작한다.
- 기존에는 상, 하위 커맨드 없이 'run' 과 같이 단일 커맨드로 사용했으나, 현재에는 'container run'과 같이 상, 하위 커맨드로 나뉘었다.
- 기존 명령어를 그대로 쓸 수 있으나 알아둘 필요는 있다.
- 도커 명령어에의 구성에서 조금 더 세부적인 내용들에 대해서 설명한다.
- 옵션: 커맨드를 세부적으로 설정한다.
- 대상: 구체적인 이름을 지정한다.
- 인자: 대상에 전달될 값을 지정한다.
- 알아두면 좋은 명렁어 관련 개념들은 다음과 같다.
- 'docker container run': 'docker image pull', 'docker container create', 'docker container start' 세 개의 명령어를 하나로 합친 것과 같다.
- 'docker container ls': 'docker ps' 로 생략해서 사용할 수 있다.
- 'docker image rm': 'docker rmi' 로 생략해서 사용할 수 있다.
컨테이너의 생성과 삭제, 실행, 정지
- 이미지 내려받기, 컨테이너 생성, 컨테이너 실행
docker container run
- 도커 컨테이너 생성
docker conatainer create
- 도커 컨테이너 실행
docker container start
- 도커 컨테이너 정지
docker container stop
- 도커 컨테이너 폐기
docker container rm
- 동작 중인 컨테이너를 삭제하는 것은 불가능하다.
- 컨테이너를 정지한 후에 삭제해야 한다.
- docker container run의 옵션들은 아래와 같다.
- -d, -i, -t 옵션들은 지속적으로 실행되는 프로그램일 때 자주 사용된다.
--name 컨테이너_이름 | 컨테이너 이름을 설정한다. |
-p 호스트_포트:컨테이너_포트 | 호스트_포트와 컨테이너_포트를 연결한다. |
-v 호스트_디스크:컨테이너_디렉토리 | 호스트_디스크와 컨테이너_디렉토리를 마운트 한다. |
--net=네트워크_이름 | 컨테이너의 네트워크를 설정한다. |
-e 환경변수_이름=값 | 컨테이너에서 사용될 환경 변수를 설정한다. |
-d | 백그라운드에서 실행한다. |
-i | 컨테이너에 터미널을 연결한다. |
-t | 컨테이너에서 특수키 사용을 허락한다. |
-help | 사용 방법 안내 메시지를 출력한다. |
컨테이너의 통신
- 이 부분에서는 컨테이너의 통신을 깊게 배우지 않는다.
- 단순하게 호스트의 포트와 컨테이너의 포트를 연결하는 것에 초점을 맞추고 있다.
- 도커 컨테이너에 웹 서버를 자주 띄우는 글쓴이의 경우 기초적인 내용은 알기에 많은 부분 생략했다.
- 컨테이너를 생성할 때 지정해주는 포트는 물리적 컴퓨터 (호스트) 의 특정 포트로 들어오는 요청을 컨테이너의 지정된 포트로 전달해주는 역할을 한다.
- 아래의 그림은 예시를 보여준다.
- 호스트의 하나의 포트에 여러 개의 컨테이너를 연결할 수는 없다.
- 하나의 포트로 들어온 요청이 어떤 컨테이너로 분배되어야할지 알지 못하기 때문이다.
- 이런 경우를 해결하기 위해서는 리버스 프록시를 설정하여 서버 이름을 통해 특정 컨테이너로 요청을 분배할 수 있다.
아무래도 이번 챕터는 명령어에 친숙해지는 과정이었기에 글로써 요약하는 것에는 한계가 있었다. 또, 명령어의 대부분은 사용하면서 친숙해지는 것이 맞기 때문에 개념적인 부분을 제외하고는 글에서 생략했다.
Keyword: Docker, 도커
추천글
2024.08.11 - [책으로 하는 공부] - [책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 두 번째 이야기
[책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 두 번째 이야기
저번 시간에 도커가 무엇인지에 대해 주로 다뤘다면 이번에는 도커에 대해서 알아보는 시간을 가집니다.본 게시글은 시리즈 게시글이며, "그림과 실습으로 배우는 도커 & 쿠버네티스" 책을 읽고
se-dobby.tistory.com
2024.08.12 - [책으로 하는 공부] - [책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 세 번째 이야기
[책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 세 번째 이야기
본 게시글에서는 도커를 설치하기 전 기본 지식에 대해서 다루고 있습니다.윈도우, mac OS 사용자들도 자신의 운영 체제에서 도커가 어떻게 설치되는지 알아가면 좋을 것 같습니다. 그림과 실
se-dobby.tistory.com
'책으로 하는 공부' 카테고리의 다른 글
[책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 여섯 번째 이야기 (0) | 2024.08.18 |
---|---|
[책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 다섯 번째 이야기 (0) | 2024.08.15 |
[책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 세 번째 이야기 (0) | 2024.08.12 |
[책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 두 번째 이야기 (0) | 2024.08.11 |
[책 요약] 그림과 실습으로 배우는 도커 & 쿠버네티스 - 첫 번째 이야기 (1) | 2024.08.10 |