From cd916a83565ed29f9c7ff888412349c5169f8f82 Mon Sep 17 00:00:00 2001 From: Olov Johansson Date: Mon, 3 Aug 2026 19:06:30 +0200 Subject: [PATCH] =?UTF-8?q?v0.5=20=E2=80=94=20docker=20entrypoint,=20data?= =?UTF-8?q?=20init?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 4 ++-- entrypoint.sh | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 entrypoint.sh diff --git a/Dockerfile b/Dockerfile index e6b65b3..365c16b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,9 +5,9 @@ COPY package*.json ./ RUN npm ci --only=production COPY . . -RUN mkdir -p assets/deck-images +RUN mkdir -p assets/deck-images && chmod +x entrypoint.sh EXPOSE 3000 ENV NODE_ENV=production -CMD ["node", "server.js"] +ENTRYPOINT ["./entrypoint.sh"] diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100644 index 0000000..2f361fd --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,17 @@ +#!/bin/sh +set -e + +# If Docker created these paths as directories (because the host file didn't exist), +# remove them and create proper JSON files. +for f in /app/colony.json /app/decks.json; do + if [ -d "$f" ]; then + rm -rf "$f" + fi + if [ ! -f "$f" ]; then + echo '{}' > "$f" + fi +done + +mkdir -p /app/assets/deck-images + +exec node server.js