A decentralized music tracking and discovery platform built on AT Protocol 🎵 rocksky.app
spotify atproto lastfm musicbrainz scrobbling listenbrainz

Run migrations at startup and persist DB files

Cache drizzle-kit in the image to ensure the migrate command is
available,
and add host volume mounts for the SQLite DB, WAL, and SHM files so the
database state is persisted across container restarts.

+9 -1
+3 -1
tap/Dockerfile
··· 5 5 ENV DENO_INSTALL="/root/.deno" 6 6 ENV PATH="$DENO_INSTALL/bin:$PATH" 7 7 8 + RUN deno x drizzle-kit --version 9 + 8 10 WORKDIR /app 9 11 10 12 COPY . . ··· 13 15 14 16 EXPOSE 2481 15 17 16 - CMD ["deno", "run", "-A", "src/main.ts"] 18 + CMD ["bash", "-c", "deno x drizzle-kit migrate && deno run -A src/main.ts"]
+6
tap/compose.yaml
··· 1 1 services: 2 2 tap: 3 3 image: ghcr.io/bluesky-social/indigo/tap:latest 4 + depends_on: 5 + - webhook 4 6 restart: always 5 7 ports: 6 8 - "2480:2480" ··· 15 17 webhook: 16 18 build: . 17 19 restart: always 20 + volumes: 21 + - ./tap-cache.db:/app/tap-cache.db 22 + - ./tap-cache.db-shm:/app/tap-cache.db-shm 23 + - ./tap-cache.db-wal:/app/tap-cache.db-wal 18 24 ports: 19 25 - "2481:2481"