





저는 운영체재가 window이기 때문에 window로 다운합니다.











FROM openjdk:17-alpine
COPY ./build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar /build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar
ENTRYPOINT ["java","-jar","/build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar"]
위의 내용을 하나하나씩 설명하자면 다음과 같습니다
FROM openjdk:17-alpine
현재 제가 작업하고 있는 spring boot의 java는 17 버전이기에 도커를 이미지화 시킬 때 spring boot와 java의 환경을 맞춰줄 필요가 있습니다.
alpine : Alpine Linux 기반의 OpenJDK 17 이미지를 베이스 이미지로 사용합니다. Alpine Linux는 경량화된 리눅스 배포판으로, Docker 이미지의 크기를 최소화하는 데 도움이 됩니다.
COPY ./build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar /build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar
./build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar 파일을 컨테이너 내부의 /build/libs/ 디렉토리로 복사합니다. 이 디렉토리는 Spring Boot JAR 파일을 실행하는 데 사용됩니다.
./build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar
- /build/libs는 파일의 위치를 나타냅니다.

ENTRYPOINT ["java","-jar","/build/libs/webtoon-zoa-0.0.1-SNAPSHOT.jar"]


ex ) [ docker Id ] / [ docker Image name ]:[ tag ] -> yiyaaa/webtoon-zoa:1.0


3-1. docker desktop 내부에서 image가 생겼는지 확인합니다.

3-2. 생성한 이미지의 컨테이너가 제대로 동작되는 모습입니다.




cmd나 git bash를 활용하여 ec2서버에 접속해줍니다.
ec2에서 docker를 사용할 수 있게 설치해줍니다.
아래와 같은 명령어를 입력해 줍니다.
- gpg 키 및 저장소 추가
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository --yes \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
위와 같이 입력하고 나면 docker -v를 입력하여 설치가 되었는지 확인해줍니다.

docker login -u [ docker userId ]

password 입력시 아무것도 입력이 안되는 모습을 볼 수 있는데 보안상 안보일 뿐이지 입력이 되고 있습니다.
참고로 아래의 명령어를 입력해주면 logout됩니다.
docker logout
sudo usermod -aG docker $USER

docker image pull yiyaaa/webtoon-zoa:3.0

docker run -p 80:8080 yiyaaa/webtoon-zoa:3.0

