- [[#도커 이미지 생성 순서]]
- [[#Docker File 만들기]]
- [[#Dockerfile로 DockerImage 만들기]]
- [[#임시 컨테이서 생성 후 삭제하는 과정]]
- [[#도커 이미지 이름 부여하여 생성하기]]
도커 이미지 생성 순서
docker file 이란
- 도커 이미지를 만들기 위한 설정 파일
- 컨테이너가 어떻게 행동해야 하는지에 대한 설정을 정의하는 곳 ps. 도커 이미지가 필요한 것이 무엇인지를 생각하기
1. 베이스 이미지를 명시
- 파일 스냅샷에 해당 ### 2. 추가적으로 필요한 파일을 다운 받기 위한 몇 가지 명령어를 명시
- 파일 스냅샷에 해당 ### 3. 컨테이너 시작 시 실행될 명령어를 명시해준다.
- 시작 시 실행될 명령어에 해당
파일 스냅샷
- 스토리지 안에 존재하는 파일과 디렉토리를 특정 타이밍에서 추출한 것
- 디텍토리 / 파일 등의 복사본
베이스 이미지
- OS라고 생각하면 됨
Docker File 만들기
1. 도커 파일을 만들 폴더 생성
2. 폴더를 에디터로 열기
3. new file 생성 ‘Dockerfile’
4. 기본적 명시
FROM
이미지 생성 시 기반이 되는 레이어 이미지 이름 : 태그(버전) 형식으로 작성 ex. ubuntu : 14.04 태그를 안붙이면 자동적으로 가장 최신 것으로 다운로드 npm i 시에 버전 정보를 입력 안하면 최신판으로 설치되는 것과 동일
RUN
도커 이미지가 생성되기 전에 수행할 shell 명령어
CMD
컨테이너가 시작되었을 때 실행할 실행파일 또는 Shell script 해당 명령어는 Dockerfile 내부에서 1회만 사용가능
예제 alpine 이미지 생성 예시
Dockerfile로 DockerImage 만들기
1. dockerfile이 있는 해당 디렉토리 접근 후 ‘docker build ./’
build 과정
Step 1/2
- alpine 이미지 docker hub에서 가져오기
- id : 04eeaa5f8c35
Step 2/2
- 임시컨테이너 생성 > eac9cb4d4c0f
- 임시 컨테이너에서 새로운 이미지생성 후 임시 컨테이너 삭제 > eac9cb4d4c0f
- 이미지 생성 아이디 표시 bb361aebf877
임시 컨테이서 생성 후 삭제하는 과정
도커 이미지 이름 부여하여 생성하기
$ docker build -t ‘나의 도커 아이디’ / 저장소 또는 프로젝트명 : 태그(버전) ./
error
이유 : 도커 파일 작성시 CMD 부분 [’ ‘] 은 인식을 못함 [” “] 큰 따옴표 사용하여 이미지 재성시 정상 작동