mirror of
https://github.com/headporter81/specialsource-homepage-backend.git
synced 2026-08-08 15:41:11 +09:00
41 lines
1.3 KiB
YAML
41 lines
1.3 KiB
YAML
name: SpecialSource Backend CI/CD
|
|
|
|
on:
|
|
push:
|
|
branches: [ "master" ]
|
|
|
|
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) 비어있는 18080 포트와 지정하신 app 폴더 경로를 연결하여 실행
|
|
docker run -d \
|
|
--name ss-backend-container \
|
|
-p 18080:8080 \
|
|
-v /volume1/docker/app/specialsource-backend/logs:/app/logs \
|
|
-e JASYPT_ENCRYPTOR_PASSWORD="6Nhbnze5Wm2YOX5ZmOlkR6P6gsi1Epa5CJtUtNqN" \
|
|
ss-backend-image |