스프링부트 프로젝트를 도커를 통해서 EC2에 배포하고자 한다
로컬에서 스프링부트 프로젝트를 빌드하고
이 빌드한 것을 도커 이미지를 만든 후 도커 허브 리포지토리에 push한다.
EC2에서 도커 허브 리포지토리를 통해 이미지를 pull하고
명령어를 입력해서 실행하는 과정을 거쳐 배포할 수 있다.
❗Dockerfile 생성하기
# open jdk java11 버전의 환경
FROM openjdk:11-jdk
# JAR_FILE 변수 정의 -> 기본적으로 jar file이 2개이기 때문에 이름을 특정해야함
ARG JAR_FILE=./build/libs/careerup-0.0.1-SNAPSHOT.jar
# JAR 파일 메인 디렉토리에 복사
COPY ${JAR_FILE} app.jar
# 시스템 진입점 정의
ENTRYPOINT ["java","-jar","/app.jar"]
❗스프링부트 프로젝트 빌드하기
https://radiant515.tistory.com/322
[Spring] Spring 프로젝트 빌드하기
❗ 프로젝트 빌드 파일 생성
radiant515.tistory.com
❗Docker 설치
로컬 컴퓨터와 EC2에 각각 도커를 설치해주어야 한다
아래는 윈도우와 우분투에서 설치하는 방법 안내이다!
https://radiant515.tistory.com/315
[Docker] 윈도우11 Docker 설치(WSL2 설치 포함)
❗Docker 설치 https://www.docker.com/ Docker: Accelerated, Containerized Application Development Docker is a platform designed to help developers build, share, and run modern applications. We handle the tedious setup, so you can focus on the code. www.d
radiant515.tistory.com
https://radiant515.tistory.com/318
[Docker] 우분투 18.04 Docker 설치하기
❗Docker 오래된 버전 삭제하기 이전에 깔았던 Docker가 있다면 삭제 후 새로운 버전을 깔기 위해 명령어를 실행한다 sudo apt-get remove docker docker-engine docker.io containerd runc ❗Docker 설치 sudo apt update sudo
radiant515.tistory.com
❗Docker Hub
Docker Hub를 통해 이미지를 push하고 pull할 것이기 때문에 먼저 회원가입 후 로그인까지 실시한다.
Docker Hub Container Image Library | App Containerization
Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide.
hub.docker.com
❗Docker Image 만들기
프로젝트를 빌드한 것을 도커 이미지로 만들기 위한 과정이다.
아래의 과정은 스프링부트 프로젝트 루트경로에서 실행해야한다.
# docker build -t tokyj515/careerup .
docker build -t [도커아이디/도커리포지토리이름] .
docker images
❗Docker Hub에 Push하기
docker login
docker push tokyj515/careerup
❗EC2에서 Image Pull하기
EC2 ip에 접속한 후 아래의 명령어를 실행한다
docker pull tokyj515/careerup
# host port와 container port를 연결하기 위해 포트가 2개 적혀있다
docker run -d -p 8080:8080 tokyj515/careerup
'🔻DevOps > Docker' 카테고리의 다른 글
[Docker] 우분투에 도커 설치 후 명령어 실습 (0) | 2024.07.05 |
---|---|
[Docker] Docker 명령어(조회, 정지, 시작) (0) | 2022.12.26 |
[Docker] 우분투 18.04 Docker 설치하기 (0) | 2022.12.24 |
[Docker] Docker란? (0) | 2022.12.24 |
[Docker] 윈도우11 Docker 설치(WSL2 설치 포함) (0) | 2022.12.23 |