강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

kkkkkk님의 프로필 이미지
kkkkkk

작성한 질문수

쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)

📝 빌드/배포 파이프라인을 위한 스크립트 작성 및 실행 [구축 9단계] (💻 실습포함)

젠킨스 구축 9단계 오류

작성

·

38

1

컨테이너 빌드 중 오류가 생기는데요
#0 building with "default" instance using docker driver #1 [internal] load build definition from Dockerfile #1 transferring dockerfile: 404B 0.0s done #1 DONE 0.1s #2 [internal] load .dockerignore #2 transferring context: 2B done #2 DONE 0.2s #3 [internal] load metadata for docker.io/library/openjdk:17 #3 ERROR: docker.io/library/openjdk:17: not found ------ > [internal] load metadata for docker.io/library/openjdk:17: ------ Dockerfile:1 -------------------- 1 | >>> FROM openjdk:17 2 | COPY ./app-0.0.1-SNAPSHOT.jar /usr/src/myapp/app.jar 3 | ENTRYPOINT ["java", "-Dspring.profiles.active=${spring_profiles_active}", "-Dapplication.role=${application_role}", "-Dpostgresql.filepath=${postgresql_filepath}", "-jar", "/usr/src/myapp/app.jar"] -------------------- ERROR: failed to solve: openjdk:17: docker.io/library/openjdk:17: not found Build step 'Execute shell' marked build as failure Finished: FAILURE
--------------------

 


openjdk:17 를 이제 공식 지원 안하는것 같은데 맞을까요 ?


만약 맞다면
혹시 fork 해온 스크립트에서

 

관련 부분 다 바꾸고 지원되는 jdk 17로 수정하는 작업을 하는게 맞을까요 ?

ssh 에서도

image.png

와 같이 pull 을 못해오는것 같아서 질문 남겨봅니다.

 

 

 

 

 

 

 

 

 

 

답변 3

0

일프로님의 프로필 이미지
일프로
지식공유자

테스트 완료했고요. 자료실의 내용도 모두 수정했습니다.

기존에 17로 썼지만, 이렇게 하면 내부적으로 17.x.x 중에 최신 버전이 다운 받아지고요.

그래서 받았던 버전은 17.0.2였습니다.

다행히 17.0.2 태그로는 잘 다운로드 받아지는 걸 확인 했고. 앞으로는 17.0.2를 사용하시면 됩니다.

0

일프로님의 프로필 이미지
일프로
지식공유자

질문 감사합니다. 덕분에 저도 확인 했고요.

openjdk:17.0.2 로 테스트 해보고 변경할 예정입니다.

완료 후에 다시 답변 드릴께요.

0

안녕하세요, 인프런 AI 인턴입니다.

kkkkkk님이 겪고 계신 문제는 Docker Hub에서 openjdk:17 이미지를 찾을 수 없어서 발생하는 문제로 보입니다. 이 문제는 특정 버전의 이미지가 Docker Hub에서 더 이상 제공되지 않거나 이름이 변경된 경우 발생할 수 있습니다.

해결 방법:

  1. 이미지 이름 확인 및 대체: openjdk:17 이미지가 공식적으로 더 이상 지원되지 않거나 이름이 변경된 경우가 있으므로, Docker Hub에서 사용 가능한 최신 이미지를 확인하는 것이 필요합니다. 이를 위해 다음의 방법을 추천드립니다.

    • Docker Hub 확인: Docker Hub - OpenJDK에서 openjdk 이미지를 검색하고 최신 버전 번호를 확인하세요.
    • 일반적으로는 openjdk:17-jdk와 같은 래피네드 태그를 사용할 수 있습니다.
  2. Dockerfile 수정: 최신 이미지를 사용하기 위해 Dockerfile에서 다음과 같이 수정해보세요.

FROM openjdk:17-jdk

이 변경은 현재 사용 가능한 최신 이미지를 기반으로 하며, 다른 부분은 그대로 유지합니다.

  1. 이미지 캐시 문제 해결: 이미지가 로컬에 남아 있거나 캐시 문제로 인해 동작하지 않을 수 있습니다. 이를 해결하려면 다음 명령어로 캐시를 초기화한 뒤 다시 시도해 보세요.
docker system prune -a
docker pull openjdk:17-jdk

위 과정을 통해 Docker 이미지의 최신 정보를 갱신하고, 빌드를 시도해 보세요.

포크한 프로젝트에서 Jenkins 설정이나 다른 스크립트 내에서도 이와 동일한 변경을 진행해야 문제가 해결될 것입니다. 추가적으로, ssh 접속이 가능한 서버에서 확인한 결과도 반영이 되어야 합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

kkkkkk님의 프로필 이미지
kkkkkk

작성한 질문수

질문하기