diff --git a/scripts/Dockerfile b/scripts/Dockerfile new file mode 100644 index 0000000..28f1d42 --- /dev/null +++ b/scripts/Dockerfile @@ -0,0 +1,30 @@ +FROM eclipse-temurin:25-jre + +LABEL maintainer="Elijah" + +ARG BUILD_DATE +ARG VERSION + +LABEL org.label-schema.schema-version="1.0" +LABEL org.label-schema.build-date=$BUILD_DATE +LABEL org.label-schema.name="jmusicbot25" +LABEL org.label-schema.description="Java based Discord music bot" +LABEL org.label-schema.version=$VERSION +LABEL org.label-schema.docker.cmd="docker run -v ./config:/jmb/config -d jmusicbot25" + +# Install tini (Debian-based now, so use apt) +RUN apt-get update && \ + apt-get install -y --no-install-recommends tini && \ + rm -rf /var/lib/apt/lists/* + +RUN mkdir -p /jmb/config + +COPY JMusicBot-Snapshot-All.jar /jmb/JMusicBot.jar +COPY docker-entrypoint.sh /jmb/docker-entrypoint.sh +RUN chmod 755 /jmb/docker-entrypoint.sh + +VOLUME /jmb/config + +WORKDIR /jmb/config + +ENTRYPOINT ["/usr/bin/tini", "--", "/jmb/docker-entrypoint.sh"] \ No newline at end of file diff --git a/scripts/docker-compose.yaml b/scripts/docker-compose.yaml new file mode 100644 index 0000000..47faa34 --- /dev/null +++ b/scripts/docker-compose.yaml @@ -0,0 +1,9 @@ +version: '2.2' + +services: + jmusicbot: + image: jmusicbot25 + container_name: jmusicbot25-instance + restart: unless-stopped + volumes: + - ./config:/jmb/config diff --git a/scripts/docker-entrypoint.sh b/scripts/docker-entrypoint.sh new file mode 100644 index 0000000..b9070b5 --- /dev/null +++ b/scripts/docker-entrypoint.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +java -jar -Dnogui=true /jmb/JMusicBot.jar