도커 이미지, 도커 컨테이너를 효율적으로 관리하려고 할 때 가 있다. 만약 여러 프로젝트에서 공용으로 사용할 Ubnutu 이미지를 만들어 Base 이미지로 활용될 수 있으며, CI/CD 시간을 줄이고자 Multi Stage Build 을 이용할 수 도 있다. 멀티 스테이지 빌드 멀티 스테이지 빌드는 하나의 Dockerfile에서 스테이지를 여러 개로 나누어 빌드 프로세스를 만드는 것을 말한다. 각 스테이지는 이미지의 일부분을 생성하며, 이전 스테이지에서 생성된 파일을 다음 스테이지로 전달할 수 있다. 이 과정으로 최적화가 가능하다. 멀티 스테이지 빌드의 장점 이미지 크기 감소 빌드 프로세스 간소화 의존성 관리 용이성 이미지 크기 감소 사용 예시 CI/CD 과정에서 쓰이며 마지막 스테이지에는 최소한의 파일..
전체 글
인생 뭐 있나 사람 사는거 다 똑같지
Dockerfile은 Docker 이미지를 빌드할 때 사용하는 스크립트다. 이미지를 빌드할 때 Docker는 Dockerfile 의 각 명령어를 실행하고 그 결과를 이미지 Layer 별로 캐싱한다. 이미지 Layer 캐싱을 통해 빌드 시간을 절약할 수 있다. 도커 이미지 의 Layer 을 적절히 나누어 캐싱하기 위해서는 캐싱 가능한 명령어를 최상단에 배치하고, 변경 가능성이 높은 명령어를 뒤로 배치하는 두가지만 지켜도 좋다. 또한 도커 공식 홈페이지에서 안내하는 멀티스테이지 빌드와 이미지 레이어를 적절히 분리하는 과정까지 추가하여 더 좋은 퍼포먼스를 낼 수 있으며 이러한 전략을 통해 이미지 빌드 성능을 높이고 불필요한 시간과 리소스를 절약할 수 있다. Multi-stage builds Learn abou..
인덱스는 테이블이나 뷰에서 행의 검색 속도를 높일 수 있다. 클러스터드 인덱스클러스터형 인덱스는 해당 키 값을 기반으로 테이블이나 뷰의 데이터 로우를 정렬하고 저정한다.이러한 키 값은 인덱스 정의에 포함된 컬럼이다. 데이터 로우 자체는 한 가지 순서로만 저장될 수 있으므로 테이블당 클러스터형 인덱스는 하나만 존재할 수 있다. 때문에 일반적으로는 PK 또는 unique not null 을 사용한다.테이블의 데이터 로우가 정렬된 순서로 저장될 때만 테이블에 클러스터형 인덱스가 포함된다. 테이블에 클러스터형 인덱스가 있는 경우 테이블을 클러스터형 테이블이라고 한다. 테이블에 클러스터형 인덱스가 없는 경우 해당 데이터 로우는 힙이라는 순서가 지정되지 않은 구조에 저장된다.비클러스터형 인덱스비클러스터형 인덱스에는..