정구리의 우주정복

[Docker] jar 파일 생성, 이미지 생성 및 nexus 업로드 쿠버네티스 배포 과정 본문

STUDY/RECORD

[Docker] jar 파일 생성, 이미지 생성 및 nexus 업로드 쿠버네티스 배포 과정

Jungry_ 2023. 5. 14. 20:15
반응형

1. Dockerfile 생성

안에는 만들 이미지에 대한 정보를 기술해준다 

FROM public.ecr.aws/docker/library/eclipse-temurin:11
VOLUME /tmp
ENV TZ=UTC
COPY ./target/*.jar app.jar
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar"]

 

2. jar 파일 생성 (intelliJ 에서 진행)

mvn clean package -DskipTests

clean 이후 package 를 통해 target 폴더를 생성 + jar 파일까지 생성한다 

-> install 과 package 의 차이 ???

=> package 는 생성된 jar 파일이 .target 폴더에 위치하게 됨

=> install 은 jar 파일이 .target 하위와 repository 폴더에 위치하게 됨

skipTests 해주는 이유는 그냥 테스트 스킵하려고 하는거임 

 

3. 이미지 생성 및 업로드 (로컬에서 할 수있지만 nexux repo 에 하기 (push)

docker build -t (nexus주소):태그이름 .

docker login (nexus주소)
아이디
패스워드

docker push (nexus주소):태그이름

 

docker build 시 . 찍어주는 이유는 dockerfile 의 위치를 나타내는 것이다 

이후 넥서스에 로그인하고 docker push 를 사용해서 넥서스에 이미지를 업로드 해준다

 

4. yaml 파일 작성하기 

deployment.yaml 파일 작성 

https://kingofbackend.tistory.com/165

 

[Kubernetes] 디플로이먼트(Deployment)와 yaml 작성법

이 글은 쿠버네티스 공부한 흔적을 남기기 위한 글입니다. 기본 오브젝트로 쿠버네티스 클러스터를 구성할 수 있지만 한계가 있습니다. 이러한 한계를 극복하고자 기본 오브젝트 외 다양한 오

kingofbackend.tistory.com

해당 블로그 참고해서 필요한 내용들 작성했습니당

 

5. pod 생성하기 

 

kubectl create -f deployment.yaml 

deployment.yaml 파일을 이용해 pod 를 생성해줍니덩

 

6. service.yaml 파일 작성 및 배포 

 

service.yaml 파일 작성 후

kubectl create -f service.yaml 

사용해서 배포해줍니다

 

그럼 끗

 

반응형
Comments