diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..565e49b
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,13 @@
+FROM maven:3-openjdk-16-slim AS maven
+
+COPY ./pom.xml ./pom.xml
+COPY ./src ./src
+
+RUN mvn package
+
+FROM openjdk:16-alpine
+
+COPY --from=maven target/InviteRoles-*-jar-with-dependencies.jar /java.jar
+COPY ./entry.sh /entry.sh
+
+CMD ["/entry.sh"]
diff --git a/entry.sh b/entry.sh
new file mode 100755
index 0000000..acddd73
--- /dev/null
+++ b/entry.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+java -jar /java.jar --token="${DISCORD_TOKEN}" --db="/database/db.sqlite"
diff --git a/pom.xml b/pom.xml
index b781037..ae414af 100644
--- a/pom.xml
+++ b/pom.xml
@@ -12,7 +12,7 @@
1.8
1.8
UTF-8
- 4.0.0_47
+ 4.2.0_168
1.0.17
5.0.4
1.2.3
@@ -102,4 +102,4 @@
-
\ No newline at end of file
+
diff --git a/src/main/java/com/shimmermare/inviteroles/InviteRoles.java b/src/main/java/com/shimmermare/inviteroles/InviteRoles.java
index e9fcd3f..6f64591 100644
--- a/src/main/java/com/shimmermare/inviteroles/InviteRoles.java
+++ b/src/main/java/com/shimmermare/inviteroles/InviteRoles.java
@@ -99,7 +99,7 @@ private void run()
commandDispatcher = new CommandDispatcher<>();
Command.register(commandDispatcher);
- JDABuilder jdaBuilder = new JDABuilder(token);
+ JDABuilder jdaBuilder = JDABuilder.createDefault(token);
try
{
@@ -110,7 +110,7 @@ private void run()
catch (LoginException e)
{
LOGGER.error("Unable to login to Discord", e);
- return;
+ System.exit(-1);
}
try
@@ -120,7 +120,7 @@ private void run()
catch (InterruptedException e)
{
LOGGER.error("Failed to await JDA ready", e);
- return;
+ System.exit(-1);
}
User selfUser = jda.getSelfUser();