작업 내용
Dockerfile 작성
docker-compose.yml 작성
- Spring Boot 애플리케이션 컨테이너 구성
- MySQL 컨테이너 구성
- 앱 컨테이너와 MySQL 컨테이너 연결
- GitHub Actions용
cicd.yml 작성
- Gradle 테스트 실행
- Docker 이미지 빌드
- Docker Hub push
- EC2 서버 접속 후
docker compose up -d 실행
- GitHub Actions Secret을 통해 환경변수 및
application.yml 관리
Docker 구성
app: Spring Boot 애플리케이션 컨테이너
mysql: MySQL 8.0 컨테이너
mysql-data: MySQL 데이터 보존을 위한 Docker volume
GitHub Actions Secret
다음 값을 GitHub Actions Secret에 등록하여 배포 환경에서 사용합니다.
APPLICATION_YML
DOCKER_USERNAME
DOCKER_PASSWORD
EC2_HOST
EC2_USERNAME
EC2_SSH_KEY
MYSQL_ROOT_PASSWORD
JWT_SECRET
KAKAO_CLIENT_ID
KAKAO_REDIRECT_URI
KAKAO_CLIENT_SECRET
실행 방법
docker compose up --build -d
작업 내용
Dockerfile작성docker-compose.yml작성cicd.yml작성docker compose up -d실행application.yml관리Docker 구성
app: Spring Boot 애플리케이션 컨테이너mysql: MySQL 8.0 컨테이너mysql-data: MySQL 데이터 보존을 위한 Docker volumeGitHub Actions Secret
다음 값을 GitHub Actions Secret에 등록하여 배포 환경에서 사용합니다.
APPLICATION_YMLDOCKER_USERNAMEDOCKER_PASSWORDEC2_HOSTEC2_USERNAMEEC2_SSH_KEYMYSQL_ROOT_PASSWORDJWT_SECRETKAKAO_CLIENT_IDKAKAO_REDIRECT_URIKAKAO_CLIENT_SECRET실행 방법