0. 도커
도커는 운영체제, 개발환경 판 깃허브이다.
깃허브는 작성한 프로그램 코드를 올리고, 클론으로 공유하는데 도커허브에서 운영체제나 개발환경을 세팅하여 올리면 컨테이너 단위로 공유가 가능하다.
1. 도커 이미지
일종의 설치용 파일 포지셔닝으로, 도커 컨테이너를 생성하기 위한 바이너리 파일입니다.
2. 도커 컨테이너
도커 컨테이너란 도커 이미지를 통해 실행되는 하나의 프로세스
- Docker File은 빌드 이전 상태인 소스파일로 소스파일을 그대로 배포하지 않는다.
- Docker Image는 exe 상태의 설치 파일과 유사한 상태이다.
- Docker Container 내부에서 OS 없이 Docker File이 Run으로 실행됩니다.
원본 저장소에 있는 Docker File로부터 Docker Image를 내려받고 해당 이미지를 실행하여 여러 개의 컨테이너가 실행되는 구조입니다. 즉, 도커 이미지와 도커 컨테이너는 1 : N 구조(이미지 하나로 여러 번 실행가능한 구조)로 되어 있습니다.
도커 이미지는 읽기 전용으로 도커 컨테이너에서 수정이 일어나도 원본 이미지에는 영향을 주지 않는다.
운영체제 상에서 프로그램과 프로세스 관계라고 볼 수 있습니다. 크롬, 인텔리제이를 여러 개 열 수 있습니다.
3. 도커 이미지 구성 컨벤션
도커 이미지 이름은 아래 3가지로 구성되어 있음
- 저장소 이름 (Repository name)
- 이미지 이름 (Image name)
- 이미지 태그 (Image tag) - 버전 정보나 릴리즈 태그같은 정보
EX)
OracleRepo/mysql-server:8.0.13 - OracleRepo저장소에 mysql-server이미지 8.0.13 버전
OracleRepo/mysql-server - 태그 생략시 가장 최근 릴리즈(latest) 사용
mysql-server:5.1.12 - 저장소 생략시 기본 저장소인 도커 허브로 인식
mysql-server - 태그와 저장소 생략시 기본저장소와 latest 릴리즈 사용
4. 도커와 도커허브 구성
로컬에서 만든 docker image를 클라우드에서 배포하기 위해 docker hub에 올립니다.
즉, 빌드된 도커 이미지를 도커 허브에 올려서 각 인스턴스에서 clone하여 이미지들을 실행합니다.
'인프라' 카테고리의 다른 글
Docker -detach모드, -attach모드, -it 옵션 등 (0) | 2023.11.25 |
---|---|
컨테이너 Paused, Deleted + 도커 prune 명령어 사용 (0) | 2023.11.16 |
도커 컨테이너를 활용한 서드파티 설치, 가동하기 (1) | 2023.11.02 |
이미지와 컨테이너 관계성을 살펴보고 포트바인딩 확인하기 (1) | 2023.11.02 |
컨테이너 기술의 역사 (0) | 2023.11.01 |