File tree Expand file tree Collapse file tree 3 files changed +61
-0
lines changed
Expand file tree Collapse file tree 3 files changed +61
-0
lines changed Original file line number Diff line number Diff line change 11HELP.md
2+ .env
23.gradle
34build /
45! gradle /wrapper /gradle-wrapper.jar
Original file line number Diff line number Diff line change 1+ # Step 1: 애플리케이션 빌드
2+ FROM openjdk:17-jdk-slim AS builder
3+
4+ # 작업 디렉토리 설정
5+ WORKDIR /app
6+
7+ # Gradle Wrapper와 관련 파일 복사
8+ COPY gradlew .
9+ COPY gradle gradle
10+ COPY build.gradle .
11+ COPY settings.gradle .
12+ RUN chmod +x ./gradlew
13+
14+ # Gradle 종속성을 캐싱하여 빌드 속도 향상
15+ RUN ./gradlew dependencies --no-daemon
16+
17+ # 소스 코드 복사
18+ COPY src src
19+
20+ # 애플리케이션 빌드 (bootJar 실행)
21+ RUN ./gradlew bootJar --no-daemon
22+
23+ # Step 2: 런타임 이미지 생성
24+ FROM openjdk:17-jdk-slim
25+
26+ # 실행 디렉토리 설정
27+ WORKDIR /play-hive
28+
29+ # 빌드 단계에서 생성된 JAR 파일 복사
30+ COPY --from=builder /app/build/libs/*.jar app.jar
31+
32+ # 애플리케이션이 사용할 포트 노출
33+ EXPOSE 8080
34+
35+ # 애플리케이션 실행 명령
36+ ENTRYPOINT ["java" , "-jar" , "app.jar" ]
Original file line number Diff line number Diff line change 1+ version : ' 3.9'
2+
3+ services :
4+ app :
5+ image : ${DOCKER_USERNAME}/play-hive:latest # 사용할 이미지 이름
6+ build :
7+ context : . # Dockerfile이 위치한 디렉토리
8+ dockerfile : Dockerfile # 빌드에 사용할 Dockerfile
9+ ports :
10+ - " 8080:8080" # 호스트와 컨테이너의 포트 매핑
11+ environment :
12+ GOOGLE_CLIENT_ID : ${GOOGLE_CLIENT_ID}
13+ GOOGLE_CLIENT_SECRET : ${GOOGLE_CLIENT_SECRET}
14+ DISCORD_APPLICATION_ID : ${DISCORD_APPLICATION_ID}
15+ DISCORD_PUBLIC_KEY : ${DISCORD_PUBLIC_KEY}
16+ DISCORD_CLIENT_SECRET : ${DISCORD_CLIENT_SECRET}
17+ KAKAO_REST_API_KEY : ${KAKAO_REST_API_KEY}
18+ KAKAO_CLIENT_SECRET : ${KAKAO_CLIENT_SECRET}
19+ NAVER_CLIENT_ID : ${NAVER_CLIENT_ID}
20+ NAVER_CLIENT_SECRET : ${NAVER_CLIENT_SECRET}
21+ SENDER_EMAIL : ${SENDER_EMAIL}
22+ EMAIL_PASSWORD : ${EMAIL_PASSWORD}
23+ EMAIL_USERNAME : ${EMAIL_USERNAME}
24+ restart : always # 컨테이너가 중단되었을 때 재시작 설정
You can’t perform that action at this time.
0 commit comments