57 lines
1.6 KiB
YAML
57 lines
1.6 KiB
YAML
services:
|
|
jellystat_db:
|
|
container_name: jellystat_db
|
|
image: docker.io/library/postgres:18.2@sha256:a688ae5c99f86c1424e046ace0de890608cc0ddb5ec8ef72a6ff8305fdc8f4d2
|
|
restart: unless-stopped
|
|
shm_size: '1gb'
|
|
environment:
|
|
- POSTGRES_USER=${POSTGRES_USER}
|
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
- POSTGRES_DB=${POSTGRES_DB}
|
|
- PGDATA=/var/lib/postgresql/18/docker
|
|
volumes:
|
|
- ${APPDATA_PATH}/jellystat/db:/var/lib/postgresql
|
|
networks:
|
|
- backend
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB} -U ${POSTGRES_USER}"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
jellystat:
|
|
container_name: jellystat
|
|
image: ghcr.io/cyfershepard/jellystat:1.1.8@sha256:c8c451704ba7985340142cd047e2364cabaf41b613669b6c5340688ed217f82a
|
|
restart: unless-stopped
|
|
depends_on:
|
|
jellystat-db:
|
|
condition: service_healthy
|
|
environment:
|
|
- POSTGRES_USER=${POSTGRES_USER}
|
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
- POSTGRES_DB=${POSTGRES_DB}
|
|
- POSTGRES_IP=jellystat_db
|
|
- POSTGRES_PORT=5432
|
|
- JWT_SECRET=${JWT_SECRET}
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- ${APPDATA_PATH}/jellystat/backup-data:/app/backend/backup-data
|
|
ports:
|
|
- ${PORT}:3000
|
|
networks:
|
|
- frontend
|
|
- backend
|
|
healthcheck:
|
|
test: wget --no-verbose --tries=1 --spider http://localhost:3000/auth/isConfigured || exit 1
|
|
interval: 60s
|
|
timeout: 30s
|
|
retries: 5
|
|
start_period: 30s
|
|
|
|
networks:
|
|
frontend:
|
|
external: true
|
|
backend:
|
|
external: true
|