diff --git a/Dockerfile b/Dockerfile index c9ddbc3..a3490ee 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,7 +19,7 @@ FROM debian:bullseye-slim WORKDIR /app # Required for sqlite -RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y ca-certificates sqlite3 && rm -rf /var/lib/apt/lists/* # Create data directory for sqlite RUN mkdir -p /app/data @@ -29,8 +29,13 @@ COPY --from=builder /app/create_user . COPY --from=builder /app/static ./static COPY --from=builder /app/migrations ./migrations +# Copy entrypoint script +COPY entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh + # Expose the application port EXPOSE 3000 -# Run the server +# Run entrypoint which handles migrations +ENTRYPOINT ["/entrypoint.sh"] CMD ["./main_server"] diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100644 index 0000000..a66aafe --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -e + +# Run migrations +sqlite3 "$DATABASE_FILE" < migrations/001_init.sql +sqlite3 "$DATABASE_FILE" < migrations/002_add_anime_titles.sql +sqlite3 "$DATABASE_FILE" < migrations/003_add_anime_airing.sql + +# Start the app +exec "$@"