services: postgres: image: postgres:17 restart: unless-stopped env_file: ./.env volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD", "pg_isready", "-U", "postgres"] interval: 10s retries: 5 start_period: 10s timeout: 10s server: image: gitea.futureporn.net/futureporn/our:latest env_file: ./.env depends_on: - postgres init: true entrypoint: > sh -c "npx prisma migrate deploy && npm run start:server" volumes: - /mnt/vfs/futureporn:/mnt/vfs/futureporn ports: - target: 5000 # container port published: 8084 # Swarm ingress port protocol: tcp mode: ingress worker: image: gitea.futureporn.net/futureporn/our:latest env_file: ./.env depends_on: - postgres init: true entrypoint: > sh -c "npm run start:worker" volumes: - /mnt/vfs/futureporn:/mnt/vfs/futureporn qbittorrent: image: gitea.futureporn.net/futureporn/qbittorrent-nox:latest env_file: ./.env init: false volumes: - /mnt/vfs/futureporn:/mnt/vfs/futureporn pgadmin: image: dpage/pgadmin4:latest env_file: ./.env ports: - target: 5050 published: 5050 protocol: tcp mode: ingress volumes: pgdata: