Hi! I’m currently looking onto perhaps running Jellystat. But the instructions seem to be a bit…lacking? Is there a step by step guide on how to get it up and running?
Thanks!
Hi! I’m currently looking onto perhaps running Jellystat. But the instructions seem to be a bit…lacking? Is there a step by step guide on how to get it up and running?
Thanks!
There will probably be something in the logs that tells you what is going wrong. Maybe it can’t connect to the db, or maybe it’s starting on a wrong port or something.
Sorry i don’t have experience checking docker logs… How do I go about that?
In the same place as you run your
docker compose up
command you just typedocker compose logs
Huh…so the log is just an almost infinite loop of these:
jellystat-1 | Error: getaddrinfo ENOTFOUND jellystat-db jellystat-1 | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:120:26) jellystat-1 | [JELLYSTAT] Database exists. Skipping creation jellystat-1 | FS-related option specified for migration configuration. This resets migrationSource to default FsMigrations jellystat-1 | FS-related option specified for migration configuration. This resets migrationSource to default FsMigrations jellystat-1 | node:internal/process/promises:391 jellystat-1 | triggerUncaughtException(err, true /* fromPromise */); jellystat-1 | ^ jellystat-1 | jellystat-1 | Error: getaddrinfo ENOTFOUND jellystat-db jellystat-1 | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:120:26) { jellystat-1 | errno: -3008, jellystat-1 | code: 'ENOTFOUND', jellystat-1 | syscall: 'getaddrinfo', jellystat-1 | hostname: 'jellystat-db' jellystat-1 | }
Just for clarity’s sake, here’s my docker-compose.yml:
version: '3' services: jellystat-db: image: postgres:15.2 environment: POSTGRES_DB: 'jfstat' POSTGRES_USER: postgres POSTGRES_PASSWORD: mypassword volumes: - /postgres-data:/var/lib/postgresql/data # Mounting the volume jellystat: image: cyfershepard/jellystat:latest environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: MyJellystat POSTGRES_IP: jellystat-db POSTGRES_PORT: 5432 JWT_SECRET: 'my-secret-jwt-key' ports: - "3000:3000" #Server Port volumes: - /backup-data:/app/backend/backup-data # Mounting the volume depends_on: - jellystat-db restart: unless-stopped networks: default:
I literally haven’t changed anything from default as it was a test, even the password fields.
Your passwords for the database does not match.
But the error is about it not being able to reach the database on the hostname.
I can run it with this compose file:
services: jellystat-db: image: postgres:16-alpine container_name: jellystat-db restart: unless-stopped environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - postgres-data:/var/lib/postgresql/data networks: - jellystat jellystat: image: cyfershepard/jellystat:latest container_name: jellystat restart: unless-stopped environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_IP: jellystat-db POSTGRES_PORT: 5432 JWT_SECRET: ${JWT_SECRET} TZ: Europe/Paris # timezone (ex: Europe/Paris) JS_BASE_URL: / volumes: - jellystat-backup-data:/app/backend/backup-data depends_on: - jellystat-db networks: - traefik - jellystat labels: - traefik.enable=true - traefik.docker.network=traefik - traefik.http.routers.jellystat.entrypoints=https - traefik.http.routers.jellystat.rule=Host(`${HOSTNAME}`) - traefik.http.routers.jellystat.tls.certresolver=http - traefik.http.routers.jellystat.service=jellystat - traefik.http.services.jellystat.loadbalancer.server.port=3000 - traefik.http.services.jellystat.loadbalancer.server.scheme=http networks: jellystat: {} traefik: external: true volumes: postgres-data: null jellystat-backup-data: null
services: jellystat-db: image: postgres:16-alpine container_name: jellystat-db restart: unless-stopped environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - postgres-data:/var/lib/postgresql/data networks: - jellystat jellystat: image: cyfershepard/jellystat:latest container_name: jellystat restart: unless-stopped environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_IP: jellystat-db POSTGRES_PORT: 5432 JWT_SECRET: ${JWT_SECRET} TZ: Europe/Paris # timezone (ex: Europe/Paris) JS_BASE_URL: / volumes: - jellystat-backup-data:/app/backend/backup-data depends_on: - jellystat-db networks: - traefik - jellystat labels: - traefik.enable=true - traefik.docker.network=traefik - traefik.http.routers.jellystat.entrypoints=https - traefik.http.routers.jellystat.rule=Host(`${HOSTNAME}`) - traefik.http.routers.jellystat.tls.certresolver=http - traefik.http.routers.jellystat.service=jellystat - traefik.http.services.jellystat.loadbalancer.server.port=3000 - traefik.http.services.jellystat.loadbalancer.server.scheme=http networks: jellystat: {} traefik: external: true volumes: postgres-data: null jellystat-backup-data: null
Hmmm thanks but I’m not using traefik…Is it part of the needed setup?
No. You can leave that out. That was just me showing you that it runs on my machine, with that setup. Just bind the port instead.
Just came to say thanks…Yeah eventually after copy-pasting it from scratch again, I got it running. Seems to be working now. Thanks again!