본문 바로가기

카테고리 없음

AWS Corretto Docker 이미지 종류와 활용 방법

Official Docker Image - amazoncorretto

이미지 종류

JDK

amazoncorretto:{version}

Java Development Kit(JDK)를 포함하고 있어 애플리케이션 개발과 실행 모두에 사용할 수 있다.

 

amazoncorretto:{version}-alpine

경량화된 Alpine Linux 기반의 JDK 이미지로 작은 크기로 가벼운 환경을 제공한다. 그러나 Alpine은 musl libc를 사용하므로, 일부 라이브러리와의 호환성 문제가 있을 수 있다.

musl libc: musl은 리눅스 커널 기반의 운영체제용 C 표준 라이브러리다. MIT 라이선스로 배포되며 표준을 준수하는 libc 구현체 개발을 목표로 개발되었다. Alpine Linux는 일반적인 Linux 배포판과 달르게 Musl libc로 컴파일되었다.

JRE: 8버전 이후 제공하지 않음

amazoncorretto:8-jre

Java Runtime Environment(JRE)만 포함된 이미지로 애플리케이션을 실행하는 데 필요한 최소한의 환경을 제공한다.

 

amazoncorretto:8-jre-alpine

Alpine Linux 기반의 JRE 이미지로 경량화된 환경에서 Java 애플리케이션을 실행할 수 있도록 한다.

Slim

amazoncorretto:{version}-slim

기본 JDK 이미지 기반이지만 불필요한 파일을 제거하여 크기를 줄인 이미지다. 개발 환경에서 사용할 수 있으며, 빠른 배포 및 실행이 가능합니다.

활용 방법

이미지 사용

$ docker run amazoncorretto:21 java -version

Unable to find image 'amazoncorretto:21' locally
21: Pulling from library/amazoncorretto
e42e49097fe7: Pull complete 
8928a0cb9d97: Pull complete 
Digest: sha256:970e3e04b883e119eb3eed450153a4b358f7f22de531d6dc41179a068932721f
Status: Downloaded newer image for amazoncorretto:21
openjdk version "21.0.6" 2025-01-21 LTS
OpenJDK Runtime Environment Corretto-21.0.6.7.1 (build 21.0.6+7-LTS)
OpenJDK 64-Bit Server VM Corretto-21.0.6.7.1 (build 21.0.6+7-LTS, mixed mode, sharing)

도커파일 (Dockerfile)

# Corretto 21 JDK 이미지 사용
FROM amazoncorretto:21

# 작업 디렉토리 설정
WORKDIR /app

# JAR 파일 복사
ARG JAR_FILE_PATH=build/libs/*.jar
COPY ${JAR_FILE_PATH} app.jar

# 포트 노출
EXPOSE 8080/tcp

# 애플리케이션 실행
ENTRYPOINT ["java", "-jar", "app.jar"]

참고

  • 도커 허브 공식 이미지 amazoncorretto - Official Image (Link)
  • Getting Started with Amazon Corretto 21 on Docker Images (Link)