Docker 대신 Podman 으로 이미지 업로드 하기
·
기타/Docker
문제 상황- OS: MacOS M4 CPU (arm64)- Docker version: v29.1.3# arm 대신 amd 아키텍처 이미지 다운로드$ docker pull --platform linux/amd64 eclipse-temurin:25-jdk# 다운로드 결과 확인시 `Architecture` 가 빈 값으로 출력됨$ docker inspect eclipse-temurin:25-jdk | grep Architecture"Architecture": "",로컬 PC 는 Mac arm 아키텍처고 서버 PC 는 amd64 아키텍처를 사용한다.따라서 사용할 이미지 아키텍처를 linux/amd64 로 지정했으나 정상적으로 pull 되지 않는 현상이 있다. Podman 설치 절차 (1) Podman Des..
[Error] TestContainers: Could not find a valid Docker environment. Please see logs and check configuration
·
JVM/Error
설정 정보OS: MacOS Tahoe 26.1Java Version: eclipse-temurin:25Docker desktop: v4.52.0Testcontainers: v1.21.3Docker CLI: v29.0.1build.gradledependencies{ testImplementation('org.junit.jupiter:junit-jupiter') testImplementation("org.testcontainers:testcontainers-localstack:2.0.2") testImplementation("org.testcontainers:testcontainers-junit-jupiter:2.0.2")}LocalStack Container 를 초기화하는 과정에 에러가 발생했다.@T..
[Error] Docker Desktop - WSL integration with distro 'Ubuntu' Unexpectdly stopped. Do you want to restart it?
·
기타/Docker
현상 1) configuring docker in Ubuntu: docker cli config: failed to write file: exit status 1 Docker Desktop 실행시 매번 위와 같은 에러 다이얼로그 창이 뜬다.설정 정보Microsoft Store > Ubuntu 24.04.1 LTS 설치 Host OS Windows 10 + Ubuntu 24.04.1 LTS 설치된 상태 Ubuntu-24.04 뿐만 아니라 기본 Ubuntu 도 설치하여 Ubuntu 가 기본 시스템 버전으로 설정된 상태.$ wsl --listLinux용 Windows 하위 시스템 배포:Ubuntu(기본값)docker-desktopUbuntu-24.04 원인에러 메시지를 다시 읽어보자 WSL integra..
[Docker] manifest digest vs index digest
·
기타/Docker
Digest 는 무엇인가?Docker image 는 S3 파일처럼 MD5 해시값을 적용한 digest 를 갖는다.Digest 의 사전적 정의는 단방향 해시 함수에 적용하여 일정한 길이로 생성된 결과 값이다.  Digest 는 왜 쓰는가?메시지 무결성 보장-> 메시지가 변경되었는지 여부를 확인하기 위한 용도로 쓰인다. Digest 활용 예시git commit각각의 commit 은 서로 다른 digest 값을 갖는다.S3 eTagS3 파일 (Object) 또한 MD5 해싱을 통해 생성된 digest 값을 `eTag` 속성으로 갖는다.Docker image digest Docker image 파일도 SHA-256 으로 digest 값을 갖는다.  index digest vs manifest digestDock..
[Docker] Multi Stage
·
기타/Docker
OverviewMulti Stage build 는 말그대로 여러 스테이지를 가지고 빌드 하는 것을 말한다.stage란 무엇인가?Docker 이미지 빌드의 각 단계라고 보면된다. 다음은 Build stage  와 Running Stage 를 구성한 예다. 최종 이미지는 ./myapp 을 실행하기 위한 최소한의 환경만 세팅되어있다.go compiler 같은 파일은 제외되어있다. Why to Use그렇담 왜 쓰는 것일까?1. 이미지 크기 경량화최종 생성 이미지는 마지막 stage 의 Layer 에서만 만들어지기 때문에 불필요한 설치파일 등을 제외할 수 있다. 2. 더 빠른 빌드통상 builder stage 가 running stage 보다 더 오래걸린다.필요한 의존성을 설치하고, 실행파일을 빌드하기 때문이다...
[Docker] credential
·
기타/Docker
개요Docker credential 이 내부적으로 어떻게 이뤄지는지 안다.docker 클라이언트 로그인을 한다.$ docker login -u # password 수동 입력Login Succeed!로그인이 완료되면~/.docker/config.json 파일을 열어보자Default{ "auths": { "https://index.docker.io/v1/": { "auth": "" } }}credsStoreDocker Desktop 설치 및 로그인을 하는 경우 설정된다.{ "auths": { "https://index.docker.io/v1/": { }, "credsStore": "wincred" }}cred..