잡
메이븐(Maven) 기반 서버 배포 세팅방법
태태개발자
2025. 6. 1. 19:40
반응형
메이븐(Maven) 기반으로 B. Git + Build + Run 자동화 방식을 EC2에서 구현하는 방법을 단계별로 정리해 드릴게요.
1. EC2에 JDK & Maven 설치
JDK 설치 (Amazon Linux 2 예시)
sudo yum update -y
sudo yum install java-11-amazon-corretto-devel -y
Maven 설치
Amazon Linux 2 기본 repo에 Maven이 없으면 직접 설치:
sudo yum install maven -y
설치 확인:
mvn -v
2. EC2에 Git 설치 및 프로젝트 클론
sudo yum install git -y
git clone https://github.com/your-repo/your-project.git
cd your-project
3. EC2에서 Maven 빌드 및 실행
echo 'export MAVEN_OPTS="-Xms256m -Xmx768m"' >> ~/.bashrc
source ~/.bashrc
mvn clean package
java -jar target/yourapp-0.0.1-SNAPSHOT.jar
target/
폴더 안에 JAR 생성됨java -jar
명령어로 실행
4. 배포 스크립트 작성 예시
deploy.sh
파일 생성:
#!/bin/bash
# 프로젝트 경로
PROJECT_DIR=/home/ec2-user/your-project
cd $PROJECT_DIR
# 최신 코드 가져오기
git pull origin main
# 빌드
mvn clean package
# 이전 프로세스 종료 (예: 포트 8080 사용하는 프로세스 종료)
PID=$(lsof -ti:8080)
if [ -n "$PID" ]; then
kill -9 $PID
fi
# 새 애플리케이션 실행
nohup java -jar target/yourapp-0.0.1-SNAPSHOT.jar > app.log 2>&1 &
echo "배포 완료!"
스크립트에 실행 권한 부여:
chmod +x deploy.sh
5. 사용법
- EC2에 SSH 접속 후
cd /home/ec2-user/your-project
./deploy.sh
- 스크립트가 최신 코드로 업데이트, 빌드, 이전 앱 종료, 새 앱 실행까지 자동 처리
6. (선택) Systemd 서비스로 등록해서 서버 재부팅 시 자동 시작 가능
원한다면 systemd
설정도 추가로 알려드릴 수 있습니다.
필요하면 상세 설정이나 Nginx 리버스 프록시 설정도 같이 알려드릴게요!
반응형