도커 이미지 만들기 🔨
도커 이미지
- 도커 이미지는 컨테이너를 만들기 위해 필요한 설정이나 종속성들을 가지고 있는 소프트웨어 패키지
- 도커 허브에서 다른 사람들이 만들어 놓은 것을 이용할 수 있고, 직접 도커 이미지를 만들어서 사용하거나 도커 허브에 업로드할 수 있음
- 도커 이미지를 이용해서 도커 컨테이너를 생성 ex) docker create {이미지 이름}
도커 이미지 생성 순서 🔢
- Dockerfile 작성 - 도커 이미지를 만들기 위한 설정 파일, 컨테이너가 어떻게 행동해야 하는지에 대한 설정을 정의
- 도커 클라이언트 - 도커 파일에 입력된 것들이 도커 클라이언트에 전달
- 도커 서버 - 도커 클라이언트에 전달된 모든 작업들을 하는 곳
- 이미지 생성
Dockerfile 만들기 🔨
도커 이미지를 만들기 위한 설정 파일, 컨테이너가 어떻게 해동해야 하는지에 대한 설정을 정의하는 파일
도커 파일 만드는 순서 🔢 (feat. 도커 이미지가 필요한 것들)
- 베이스 이미지를 명시 ( 파일 스냅샷 )
- 추가적으로 필요한 파일을 다운 받기 위한 몇 가지 명령어를 명시 ( 파일 스냅샷 )
- 컨테이너 시작시 실행될 명령어를 명시 ( 시작 시 실행될 명령어 )
베이스 이미지란?
- 도커 이미지를 여러개의 레이어로 되어있음
- 이미지의 기반이 되는 부분
- OS (window, mac, linux...)라고 생각하면 됨
도커 이미지 만들기 실습!
1. 도커 이미지 생성 순서 & Dockerfile 만들기
-
도커 파일을 만들 폴더 만들기
-
1에서 생성한 폴더를 Visual Studio Code를 통해 실행 ( 다른 에디터도 가능 )
-
파일 하나를 생성 ( 파일이름 : Dockerfile로 생성 )
- 그 안에 먼저 어떻게 진행할지 기본적인 토대를 명시
1. FROM : 이미지 생성시 기반이 되는 이미지 레이어
- {이미지 이름}:{태그} 형식으로 작성
- 태그를 안붙이면 가장 최신 버전으로 다운
2. RUN : 도커 이미지가 생성되기 전에 수행할 쉘 명령어
3. CMD : 컨테이너가 시작되었을 때 실행할 실행 파일 또는 쉘 스크립트
- DockerFile내 1회만 쓸 수 있음
2. Dockerfile로 도커 이미지 만들기
- " docker build ./ "또는 " docker build. " 명령어를 통해 도커 클라이언트를 통해 도커 서버로 전달함
- bulid 명령어는 해당 디렉터리에서 dockerfile을 찾아서 도커 클라이언트에 전달함
build 명령어를 실행했을 때 일어나는 일
- 베이스 이미지를 가져옴
- 임시 컨테이너를 생성하고 베이스 이미지를 넣어줌
- 하드디스크에 파일 시스템 스냅샷 추가
- 시작 시 실행될 명령어를 추가
- 임시 컨테이너를 토대로 이미지를 생성
- 임시 컨테이너를 삭제
도커 이미지에 이름 주기
" docker build -t {도커 아이디}/{저장소/프로젝트 이름}:버전 "
명령어를 이용해서 Build시 명시적으로 이름을 줄 수 있다.
'개발환경' 카테고리의 다른 글
[개발환경 - 도커(4)] 도커 명령어 사용하기 / 도커 기본 클라이언트 명령어 - 개발하는 지토 (0) | 2020.11.21 |
---|---|
[개발환경 - 도커(3)] 도커(Docker) 기본 흐름, 기존 가상머신(VM)과의 차이, 도커 run 해보기 - 개발하는 지토 (0) | 2020.11.21 |
[개발환경 - 도커(2)] 도커 설치하기 윈도우 10 (Docker 설치하기 window 10 ) - 개발하는 지토 (0) | 2020.11.20 |
[개발환경 - 도커(1)] 도커란 무엇인가.. 도커를 쓰는이유!! (Docker) - 개발하는 지토 (0) | 2020.11.20 |
댓글