Back-End/Docker

Docker 인터뷰(2)

yeonx 2022. 11. 26. 18:42
728x90

11. 도커 엔진이란?

Docker엔진은 클라이언트-서버를 나타낸다. Docker 요소와 서비스를 사용하여 컨테이너를 만들고 실행한다. Docker엔진과 클라이언트는모두 동일한 호스트(또는 원격 호스트)에 있어야 한다. 엔진은 클라이언트 측 CLI(명령줄 인터페이스)를 제공한다. 이를 통해 클라이언트와 엔진 간의 연결을 설정할 수 있다.

 

12. Docker 이미지는 무엇인가?

몇 가지 지침에 따라 도커 이미지가 생성된다. 이 지침은 작업 중인 응용프로그램의 완전히 실행 가능한 버전을 만드는 데 중점을 둔다. 도커 이미지 파일은 결국 Docker 컨테이너에서 코드를 실행하는 데 사용되는 다양한 앱 계층으로 구성된다. 이러한 이미지가 결합되어 컨테이너를 구성한다.

 

13. Docker 컨테이너란?

도커 컨테이너는 도커 이미지에서 생성된 애플리케이션 패키지이다. 애플리케이션을 실행하는데 필요한 전체 패키지를 보유한다. 컨테이너는 도커의 주요 유틸리티 공급자이다. 이를 통해 사용자는 중단 없이 크로스 플랫폼 기반으로 작업할 수 있다. 또한. Docker 컨테이너는 다른 가상 머신보다 적은 공간을 차지한다. 따라서 이러한 의미에서 컨테이너는 더 가볍고 휴대가 간편하다.

 

14. 도커 허브란?

도커 허브는 가장  큰 커뮤니티 서비스 중 하나이다. Docker 자체에서 제공한다. Docker 컨테이너를 위한 거대한 라이브러리 모음이다. 이미지를 찾고 공유하기에 이상적인 장소이다. 이 허브는 100000개 이상의 Docker이미지 컬렉션을 능가한다. 다른 소프트웨어 공급업체, 다른 프로젝트 및 커뮤니티 자체에서 이러한 컨테이너 이미지를 공유한다.

Docker Hub는 푸시/풀 컨테이너 이미지, 공식 및 게시자 이미지, 웹훅을 위한 리포지토리와 같은 몇 가지 유용한 기능을 제공한다. 그리고 자연스럽게 BitBucket 및 Github에서 고급 컨테이너 이미지를 빌드할 수 있다. 

 

15. 도커 레지스트리란?

Docker Registry는 Docker 이미지의 저장소이다. 또한 이미지를 배포한다. Docker 리포지토리로 정렬된다. 단일 이미지는 다른 버전을 가질 수 있다. 그러나 Docker 리포지토리의 태그로 식별된다. 이러한 저장소는 특정 이미지의 사용 가능한 모든 버전을 유지한다.

Docker 레지스트리는 사용자의 의도에 따라 비공개 또는 공개가 될 수 있다. 도커 레지스트리는 도커 리포지토리 그룹을 보유할 수 있다. 그러나 공개 Docker 레지스트리는 Docker Hub로 알려져 있다.

 

16. Docker 아키텍처의 세 가지 구성 요소는 무엇인가?

이것은 가장 일반적인 Docker 인터뷰 질문 중 하나이다. Docker 아키텍처는 세 가지 기본 빌딩 블록에서 작동한다.

  • 클라이언트 : Docker 클라이언트는 Docker 명령을 트리커한다.
  • 서버/호스트 : Docker Host는 이미지가 있는 컨테이너로 구성된 Docker Daemon을 실행한다.
  • 기재 : Docker Registry는 공개 또는 비공개 일 수 있는 허브에 의해 Docker 이미지를 저장한다.

 

17. Docker 아키텍처는 어떻게 작동하는가?

클라이언트를 사용하여 서버의 Docker 데몬에 빌드 명령을 보낼 수 있다. 그 후 Docker Daemon은 주어진 입력으로 이미지를 빌드하고 레지스트리에 저장한다. 이 레지스트리는 Docker 허브 또는 로컬 저장소가 될 수 있으며 공용 또는 될 수 있다.

Docker 허브에서 이미지를 가져올 수 있다. 실행 중인 Docker 이미지를 생성해야 하는 경우 CLI에서 실행 명령인 문제를 Docker Container에 생성해야 한다.

 

18. Docker 파일을 빌드하려면 어떻게 해야하나?

Dockerfile은 텍스트 파일이다. 여기에는 특정 이미지를 구축하는 데 필요한 모든 지침이 포함되어 있다. Dockerfile을 만드는 것은 아주 쉬운 일이다. Docker는 이미지를 빌드하기 위한 일련의 명령을 지원한다. 이러한 명령 중 일부는 FROM, ENTRYPOINT, 빌드, CMD, ENV, 볼륨

 

19. Docker 이미지를 어떻게 구축할 수 있을까?

이미지를 빌드하려면 다음 명령어를 입력해야한다. "docker build" 여기 build는 Docker에 이미지 빌드를 지시하는데 사용되는 Docker 명령어다. "docker build" 명령은 Dockerfile과 단일 컨텍스트를 사용하여 Docker 이미지를 만든다. 빌드 컨텍스트는 파일 그룹이다. 이러한 파일은 고유한 PATH/URL에 있다.

 

20. Docker Swarm은 무엇을 사용하는가?

Docker Swarm은 Docker용 클러스터링 도구일 뿐만 아니라 Docker 컨테이너를 예약하는데도 도움이 된다. 개발자뿐만 아니라 다른 기업도 swarm을 사용하여 노드용 Docker 클러스터를 하나의 가상 머신으로 개발하고 구성할 수 있다.

Docker Swarm은 Docker API를 사용하여 다른 도구 관리자는 Docker 컨테이너를 예약하고 정렬하는 Swarm Manager를 통해 Swarm을 제어하고 모니터링 할 수 있다.

 

 

참고 : https://ciksiti.com/ko/chapters/5766-50-frequently-asked-docker-interview-questions-and-answers

'Back-End > Docker' 카테고리의 다른 글

[Docker] 명령어 정리  (0) 2023.08.11
Docker 인터뷰(1)  (0) 2022.11.26
[Docker] 도커에 Spring Boot 구축  (0) 2022.10.20
[Mac OS] Docker 설치  (0) 2022.10.19
Docker 설치  (0) 2022.05.24