[F] Fix docker build

Closes #24
pull/29/head
Azalea 2024-04-01 14:04:19 -04:00
parent d4178c85a9
commit 0c93b85024
3 changed files with 25 additions and 17 deletions

View File

@ -1,6 +1,6 @@
# Use a multi-stage build to keep the image size small
# Start with a Gradle image for building the project
FROM gradle:jdk11 as builder
FROM gradle:jdk21-alpine as builder
# Copy the Gradle wrapper and configuration files separately to leverage Docker cache
COPY --chown=gradle:gradle gradlew /home/gradle/
@ -20,13 +20,13 @@ COPY --chown=gradle:gradle src /home/gradle/src
RUN ./gradlew build -x test
# Start with a fresh image for the runtime
FROM openjdk:11-jre-slim
FROM eclipse-temurin:21-jre-alpine
# Set the deployment directory
WORKDIR /app
# Copy only the built JAR from the builder image
COPY --from=builder /home/gradle/build/libs/aqua-?.?.??.jar /app/
COPY --from=builder /home/gradle/build/libs/AquaDX-*.jar /app/
# The command to run the application
CMD java -jar aqua-*.jar
CMD java -jar AquaDX-*.jar

View File

@ -97,7 +97,7 @@ dependencies {
group = "icu.samnya"
version = "1.0.0"
description = "AquaDX Arcade Server"
java.sourceCompatibility = JavaVersion.VERSION_17
java.sourceCompatibility = JavaVersion.VERSION_21
springBoot {
mainClass.set("icu.samnyan.aqua.EntryKt")

View File

@ -4,23 +4,31 @@ services:
app:
build: .
ports:
- "8080:8080" # Replace with your application's port
- "80:80"
- "8443:8443"
- "22345:22345"
environment:
- DB_HOST=db
- DB_PORT=3306
- DB_USER=root
- DB_PASSWORD=mysecret
- SPRING_DATASOURCE_URL=jdbc:mariadb://db:3306/main
- SPRING_DATASOURCE_USERNAME=cat
- SPRING_DATASOURCE_PASSWORD=meow
- SPRING_DATASOURCE_DRIVER_CLASS_NAME=org.mariadb.jdbc.Driver
depends_on:
- db
volumes:
- ./config:/app/config
- ./data:/app/data
db:
image: mariadb:latest
environment:
MYSQL_ROOT_PASSWORD: mysecret
MYSQL_DATABASE: myappdb
MYSQL_USER: myappuser
MYSQL_PASSWORD: myapppassword
MYSQL_ROOT_PASSWORD: meow
MYSQL_DATABASE: main
MYSQL_USER: cat
MYSQL_PASSWORD: meow
ports:
- "3306:3306"
volumes:
- ./db:/var/lib/mysql
- "127.0.0.1:3369:3306"
# There is an unfixed bug in Windows WSL2 that prevents volumes from working
# properly with mariadb. Please uncomment this on Linux / MacOS.
# Check https://stackoverflow.com/questions/76711550/i-get-an-error-on-mariadb-allways-i-start-my-app
# volumes:
# - ./data/db:/var/lib/mysql