티스토리 뷰
728x90
반응형
이미지란?
- 이미지란 프로세스가 실행되는 파일들의 집합입니다. 예를들어 리눅스서버가 실행되기 위해서는 무수히 많은 파일들이 있는데 해당 모든 파일들을 압축하여 이미지를 만든다고 생각하면 될 것같습니다.
- 이미지는 컨테이너 실행에 필요한 파일과 설정값등을 포함하고 있는 것으로 상태값을 가지지 않고 변하지 않습니다.
Dockerfile
- Dockerfile이란 Docker 이미지를 만들기 위한 설정파일 입니다.
핵심 명령어
명령어 | 설명 |
FROM | 베이스 이미지 지정 |
RUN | 쉘 명령어 실행 -y : 넣어주기 |
CMD | 컨테이너 기본 실행 멸령어 |
EXPOSE | 오픈되는 포트 정보 |
ENV | 환경 변수 설정 |
ADD | 파일 또는 디렉토리 추가, URL/ZIP 사용가능 |
COPY | 파일 또는 디렉토리 추가 |
ENTRYPOINT | 컨테이너 기본 실행 명령어 |
VOLUME | 호스트와 컨테이너 내부의 디렉토리를 설정하여 데이터를 공유 |
USER | RUN, CMD, ENTRYPOINT를 실행하는 사용자 |
WORKDIR | 해당 디렉토리로 이동히여 명령어를 실행하겠다는 의미, cd와 같은 기능 ex) WORKDIR /home/kdg |
ARG | 빌드타임 환경변수 설정 |
LABEL | key - value 데이터 |
ONBUILD | 다른 빌드의 베이스로 사용될때 사용하는 명령어 |
Dockerfile 예시
FROM openjdk:11-jre-slim-buster
RUN sodu apt-get update -y
RUN sodu apt-get upgrade -y
ARG JAR_FILE=build/libs/*.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
이미지 빌드 명령어
docker build -t --no-cache kdg/dev .
옵션 | 설명 |
-t | 이미지 이름과 태그를 설정 |
--no-cache | 빌드 시 캐시 기능을 사용하지 않음 |
. | 빌드 컨텍스트로서 현재 디렉토리를 의미하는 .을 주로사용 필요한 경우 다른 디렉토리를 지정하여 사용 가능 |
.dockerignore
- .gitignore와 비슷한 역할을 하는 파일
이미지 배포
- 하나의 이미지를 만들어 도커 허브에 저장을 한다면 해당 이미지를 다른 서버에서 다운을 받아 사용할 수 있습니다.
728x90
반응형
'CI&CD' 카테고리의 다른 글
Docker - Docker Network에 대한 이해 (2) | 2022.03.12 |
---|---|
React Nginx Docker 최적화 이미지 빌드 (2) | 2022.03.10 |
React & Docker & Jenkins CI&CD 배포 방법 (0) | 2022.03.08 |
Docker - Docker 기본 명령어 (0) | 2022.03.05 |
Docker & Jenkins & Spring boot & Gradle CI&CD 배포 방법 (2) | 2022.02.27 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- transactional outbox pattern spring boot
- JDK Dynamic Proxy와 CGLIB의 차이
- java ThreadLocal
- spring boot excel download oom
- transactional outbox pattern
- 람다 표현식
- 자바 백엔드 개발자 추천 도서
- redis sorted set으로 대기열 구현
- spring boot redisson sorted set
- spring boot poi excel download
- pipeline architecture
- 트랜잭셔널 아웃박스 패턴 스프링부트
- redis sorted set
- java userThread와 DaemonThread
- 레이어드 아키텍처란
- pipe and filter architecture
- 공간 기반 아키텍처
- 서비스 기반 아키텍처
- @ControllerAdvice
- space based architecture
- polling publisher spring boot
- microkernel architecture
- redis 대기열 구현
- spring boot excel download paging
- spring boot 엑셀 다운로드
- 트랜잭셔널 아웃박스 패턴 스프링 부트 예제
- spring boot redis 대기열 구현
- spring boot redisson 분산락 구현
- spring boot redisson destributed lock
- service based architecture
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함