diff --git a/.env b/.env new file mode 100644 index 0000000..5c28d2e --- /dev/null +++ b/.env @@ -0,0 +1,2 @@ +# .env +DATA_DIR=/srv/dev-disk-by-uuid-0c76cdc9-484e-45a6-9283-49e75e12eece/dockerApp/ReDiveClanBattleRecordBackend \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..fa309f0 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +# 使用 Kotlin + JDK 的輕量化映像 +FROM gradle:7.5.1-jdk17-alpine AS builder + +WORKDIR /app +COPY . . +RUN gradle clean shadowJar --no-daemon + +# 運行階段 +FROM eclipse-temurin:21-jdk-ubi10-minimal +WORKDIR /app + +COPY --from=builder /app/build/libs/*.jar app.jar + +CMD ["java", "-jar", "app.jar", "com.ray650128.pcredive.ApplicationKt"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..23deb06 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,11 @@ +version: '3.8' + +services: + app: + build: . + container_name: clan-battle-record-backend + env_file: + - .env + volumes: + - ${DATA_DIR}:/app/data + restart: always diff --git a/src/main/kotlin/com/ray650128/pcredive/database/service/MemberRecordService.kt b/src/main/kotlin/com/ray650128/pcredive/database/service/MemberRecordService.kt index 5704992..4cee7c1 100644 --- a/src/main/kotlin/com/ray650128/pcredive/database/service/MemberRecordService.kt +++ b/src/main/kotlin/com/ray650128/pcredive/database/service/MemberRecordService.kt @@ -7,7 +7,7 @@ import org.litote.kmongo.* import org.litote.kmongo.id.toId object MemberRecordService { - private val client = KMongo.createClient("mongodb://ray650128:Zx650128!@ray650128.com:27017") + private val client = KMongo.createClient("mongodb://ray650128:Zx650128!@192.168.50.128:27017") private val database = client.getDatabase("pc_re_dive_clan_battle") private val recordCollection = database.getCollection() diff --git a/src/main/kotlin/com/ray650128/pcredive/database/service/MemberService.kt b/src/main/kotlin/com/ray650128/pcredive/database/service/MemberService.kt index a1e3b99..dcfa793 100644 --- a/src/main/kotlin/com/ray650128/pcredive/database/service/MemberService.kt +++ b/src/main/kotlin/com/ray650128/pcredive/database/service/MemberService.kt @@ -6,7 +6,7 @@ import org.litote.kmongo.* import org.litote.kmongo.id.toId object MemberService { - private val client = KMongo.createClient("mongodb://ray650128:Zx650128!@ray650128.com:27017") + private val client = KMongo.createClient("mongodb://ray650128:Zx650128!@192.168.50.128:27017") private val database = client.getDatabase("pc_re_dive_clan_battle") private val memberCollection = database.getCollection()