From d265a2b122b0b2dc39b2e621ea5692fa02c130cc Mon Sep 17 00:00:00 2001
From: Flechaa <50523969+Flechaa@users.noreply.github.com>
Date: Sat, 30 Aug 2025 02:46:03 +0100
Subject: [PATCH 1/3] Add docker support
---
Dockerfile | 26 ++++++++++++++++++++++++++
docker-compose.yml.example | 16 ++++++++++++++++
2 files changed, 42 insertions(+)
create mode 100644 Dockerfile
create mode 100644 docker-compose.yml.example
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..b802899
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,26 @@
+# Based on https://github.com/AnalogJ/docker-cron
+
+FROM debian:bookworm-slim
+
+RUN apt-get update && \
+ apt-get install -y \
+ busybox-static \
+ geographiclib-tools \
+ mariadb-client \
+ jq \
+ curl \
+ && mkdir -p /var/spool/cron/crontabs && \
+ rm -rf /etc/cron.*/* && \
+ rm -rf /var/lib/apt/lists/*
+
+WORKDIR /blissey
+
+ENTRYPOINT ["sh", "-c", " \
+ env >> /etc/environment && \
+ ./settings.run && \
+ cat ./crontab.txt >> /var/spool/cron/crontabs/root && \
+ echo \"$@\" && \
+ exec \"$@\" \
+", "--"]
+
+CMD ["busybox", "crond", "-f", "-l", "2"]
diff --git a/docker-compose.yml.example b/docker-compose.yml.example
new file mode 100644
index 0000000..600e234
--- /dev/null
+++ b/docker-compose.yml.example
@@ -0,0 +1,16 @@
+services:
+ blissey:
+ build: .
+ container_name: blissey
+ restart: unless-stopped
+ networks:
+ - scanner
+ volumes:
+ - ./path/to/dragonite:/home/dkmur/Dragonite # Change according to your directory structure
+ - ./:/blissey
+ # Optional
+ - /etc/timezone:/etc/timezone:ro
+ - /etc/localtime:/etc/localtime:ro
+
+networks:
+ scanner:
\ No newline at end of file
From 307a2f37b7da732ea457d4bd7aeba9db9b4f4b33 Mon Sep 17 00:00:00 2001
From: Flechaa <50523969+Flechaa@users.noreply.github.com>
Date: Sat, 30 Aug 2025 02:46:16 +0100
Subject: [PATCH 2/3] Add docker setup instructions
---
README.md | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 33d42e7..eadf2bf 100644
--- a/README.md
+++ b/README.md
@@ -12,14 +12,23 @@ Processing is done on interval 15/60/1440/10080 minutes and can be displayed by
- enable save logs in controller config is you want them processed
- mysql and jq installed
-## 2 Setup
+## 2 Instructions
- clone Blissey, `git clone https://github.com/UnownHash/Blissey.git && cd Blissey`
- create stats db and user (user needs to have access to stats/controller/golbat db)
- copy and fill out config, `cp default_files/config.ini.example config.ini`
+
+### 2.1 Standard Setup
- execute setting.run
- add content of crontab.txt to your cron
-### 2.1 Geofences
+### 2.2 Docker Setup
+- Authenticate to [GitHub Packages's docker container registry](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry)
+- copy `docker-compose.yml.example` to `docker-compose.yml`
+- modify it to your needs
+- ``docker compose up -d``
+- ``settings.run`` & ``crontab.txt`` will get executed automatically
+
+### 2.3 Geofences
Blissey needs quest and mon fences in order to aggregate data. 2 ways of doing this:
1 Use Koji
- set config.ini accordingly
From dd9bf89e7dc728ab436e4c8eb721b39b07393508 Mon Sep 17 00:00:00 2001
From: Flechaa <50523969+Flechaa@users.noreply.github.com>
Date: Sat, 30 Aug 2025 18:58:02 +0100
Subject: [PATCH 3/3] Add additional explanation in docker-compose.yml
---
docker-compose.yml.example | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/docker-compose.yml.example b/docker-compose.yml.example
index 600e234..3eebd96 100644
--- a/docker-compose.yml.example
+++ b/docker-compose.yml.example
@@ -6,6 +6,7 @@ services:
networks:
- scanner
volumes:
+ # ↓ Must match dragonite_path in your config.ini
- ./path/to/dragonite:/home/dkmur/Dragonite # Change according to your directory structure
- ./:/blissey
# Optional
@@ -13,4 +14,4 @@ services:
- /etc/localtime:/etc/localtime:ro
networks:
- scanner:
\ No newline at end of file
+ scanner: