✅ 전체 CI/CD 배포 플로우

PUROMANGA·2025년 5월 28일

기술스택

목록 보기
9/22

1. 개발 완료 및 테스트 완료된 dev 브랜치의 코드 준비

로컬에서 기능 테스트까지 끝낸 상태

2. application.yml에 Redis, MySQL 등 연결 설정

.env 또는 GitHub Secrets와 함께 민감 정보 분리 필요

3. Dockerfile 생성

너의 Spring Boot 앱을 이미지로 만들기 위한 파일

./gradlew build 후 .jar 패키징 → Docker build 로 이미지 생성

4. docker-compose.yml 작성

app, mysql, redis, (optional) elasticsearch 포함

포트, 볼륨, 네트워크 등 구성 포함

5. GitHub Actions (예: .github/workflows/deploy.yml) 작성

트리거: main 혹은 master 브랜치 push 시

step:

코드를 빌드하고 Docker 이미지 생성

AWS 인증 (액세스 키/시크릿 키 or EC2 pem 인증)

EC2로 SSH 접속 or ECR Push + EC2 Pull

EC2에서 docker-compose up -d 실행

5.5 EC2에 GIT CLONE 및 환경변수 설정

📦 예시 (Ubuntu 기준)

EC2 접속:

ssh -i path/to/your-key.pem ubuntu@54.79.129.49

프로젝트 clone:

cd ~
git clone https://github.com/너의-깃허브-유저명/레포명.git your-app
cd your-app

.env 파일 생성:

nano .env

그리고 아래 내용 붙여넣기:

MYSQL_DATABASE=luvisdb
MYSQL_USER=luvisuser
MYSQL_PASSWORD=luvispass
REDIS_PASSWORD=redispass123

6. 배포 트리거: master에 Push

GitHub Actions 실행

7. GitHub Actions가 EC2에 접속 후 배포

Docker 이미지 빌드 or pull

docker-compose up으로 컨테이너 실행

8. ✅ 애플리케이션 + Redis + MySQL 정상 실행 확인

0개의 댓글