docker 2

Docker / Buildkit 에서 SOURCE_DATE_EPOCH와 rewrite-timestamp 설정

Docker / Buildkit 에서 SOURCE_DATE_EPOCH와 rewrite-timestamp 설정 컨테이너 이미지를 빌드하는 과정에서 동일한 이미지 레이어 구성을 가졌음에도 불구하고 빌드 캐시를 활용하지 않는 경우, 최종 이미지의 해시값이 매번 변경되는 현상이 발생한다. 이러한 변화는 이미지 매니페스트와 각 빌드 단계에서 생성되는 레이어에 현재 빌드 시간이 포함되어 있기 때문으로, 캐시를 재활용하지 않을 경우 동일한 컨텍스트, 소스, 도커파일이라 하더라도 매번 다른 이미지가 생성된다. 기술적 배경을 살펴보면, 도커파일 내에서 apt와 같은 패키지 매니저를 통해 원격 설치를 진행하는 경우, 매 호출 시 동일한 명령어로 이미지를 구성하더라도 실제 파일 시스템에는 변경 사항이 발생할 수 있어 이와 ..

개발/ETC 2024.03.13

오픈소스 무료 윈도우 도커 컨테이너 실행하기

도커 데스크탑이 라이센스 변경으로 유료화 되었습니다. 소규모 기업이나 개인은 무료로 사용가능 하지만 일정 규모 이상 기업에서는 개발이나 테스트용으로도 유료를 구매해야 쓸 수 있습니다. 도커 데스크탑이 아닌 아직 도커 CLI와 도커엔진은 무료이므로 일반적인 리눅스 기반 컨테이너라면 윈도우10과 Hyper-V에 리눅스를 설치하거나 WSL2에 Docker를 설치해 리눅스 컨테이너를 실행해 개인 개발 환경 등에 사용할 수는 있습니다. 하지만 윈도우를 도커라이즈한 윈도우 컨테이너라면 리눅스 도커로 실행이 안됩니다. 이럴때는 다음과 같은 조합을 사용하면 무료 오픈소스로 사용 가능합니다. 윈도 도커 컨테이너 유료화 대응 무료진영 https://github.com/containerd/containerd containe..

개발/Kubernetes 2022.03.30