Skip to content

[8주차] 조연준/[feat] Docker Compose & CI/CD #319

Description

@yeonjuncho

작업 내용

  • 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions