diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..6e41d39 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,41 @@ +name: SpecialSource Backend CI/CD + +# main 브랜치에 코드가 푸시되면 자동으로 실행하라는 뜻입니다. +on: + push: + branches: [ "main" ] + +jobs: + build-and-deploy: + runs-on: backend-runner + + steps: + - name: 1. 최신 소스 코드 가져오기 + uses: actions/checkout@v3 + + - name: 2. Java 21 환경 세팅하기 + uses: actions/setup-java@v3 + with: + java-version: '21' + distribution: 'temurin' + + - name: 3. Gradle 빌드 (JAR 파일 생성) + run: | + chmod +x ./gradlew + ./gradlew clean bootJar + + - name: 4. Docker 이미지 빌드 및 서버 재시작 + run: | + # 1) 도커 이미지 굽기 + docker build -t ss-backend-image . + + # 2) 기존에 돌고 있던 컨테이너가 있다면 멈추고 삭제 (에러 무시) + docker stop ss-backend-container || true + docker rm ss-backend-container || true + + # 3) 새 컨테이너 실행 (Jasypt 비밀번호를 꼭 본인 것으로 수정하세요!) + docker run -d \ + --name ss-backend-container \ + -p 8080:8080 \ + -e JASYPT_ENCRYPTOR_PASSWORD="81sungjin1015" \ + ss-backend-image \ No newline at end of file