dokkaner / teemii

A versatile, self-hosted manga reader and manager with extensible agent-based metadata retrieval
https://www.teemii.io
MIT License
330 stars 25 forks source link

Can't change the data folder to a remote one #59

Closed Elmagenta closed 10 months ago

Elmagenta commented 10 months ago

Description

I tried changing the volume where Teemii datas are stored to a remote one, but i can't inizialize the setup after I do this.

I set the docker-compose as follow:

version: '3.8'

services:
  teemii-frontend:
    image: dokkaner/teemii-frontend:latest
    #build: ./app
    ports:
      - "8083:80"
    networks:
      - teemii-network
    environment:
      - VITE_APP_TITLE=Teemii
      - VITE_APP_PORT=80

  teemii-backend:
    image: dokkaner/teemii-backend:latest
    #build: ./server
    volumes:
      - teemii-data:/data
    networks:
      - teemii-network
    environment:
      - EXPRESS_PORT=3000
      - SOCKET_IO_PORT=1555

volumes:
  teemii-data:
    name: teemii-data
    driver_opts:
      type: cifs
      o: username=<username>,password=<password>,uid=1001,gid=1001,rw,file_mode=0777,dir_mode=0777
      device: //192.168.178.37/NAS/Docker/Teemii

(obviously i covered username and password for privacy concern)

As far i can tell, you can only use a data folder that is on the same machine as the other folders and there is no way to use a remote folder to store data in this version of Teemi, cause i had a previous version and it was working fine.

Version

0.8.1

Steps to Reproduce

  1. Change the folder location of the data folder to a remote folder on a different machine
  2. Start the compose

Screenshots

No response

Logs

teemii-teemii-backend-1   | [2024-01-12 23:28:23.199 +0000] ERROR: ✗ Failed to apply migrations
teemii-teemii-backend-1   |     err: {
teemii-teemii-backend-1   |       "type": "Error",
teemii-teemii-backend-1   |       "message": "Error in UpAllMigration: SQLITE_BUSY: database is locked",
teemii-teemii-backend-1   |       "stack":
teemii-teemii-backend-1   |           Error: Error in UpAllMigration: SQLITE_BUSY: database is locked
teemii-teemii-backend-1   |               at UpAllMigration (/app/src/loaders/sequelize.js:113:11)
teemii-teemii-backend-1   |               at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)
teemii-teemii-backend-1   |               at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)
teemii-teemii-backend-1   |               at async ormConnect (/app/src/loaders/orm.js:38:31)
teemii-teemii-backend-1   |               at async createDatabase (/app/src/services/setupService.js:151:5)
teemii-teemii-backend-1   |               at async deployDB (/app/src/controllers/setupController.js:105:5)
teemii-teemii-backend-1   |     }
teemii-teemii-backend-1   | createDatabase error Error: Error in UpAllMigration: SQLITE_BUSY: database is locked
teemii-teemii-backend-1   |     at UpAllMigration (/app/src/loaders/sequelize.js:113:11)
teemii-teemii-backend-1   |     at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)
teemii-teemii-backend-1   |     at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)
teemii-teemii-backend-1   |     at async ormConnect (/app/src/loaders/orm.js:38:31)
teemii-teemii-backend-1   |     at async createDatabase (/app/src/services/setupService.js:151:5)
teemii-teemii-backend-1   |     at async deployDB (/app/src/controllers/setupController.js:105:5)
teemii-teemii-frontend-1  | 192.168.178.98 - - [12/Jan/2024:23:28:23 +0000] "POST /api/v1/setup/deployDB HTTP/1.1" 500 70 "http://192.168.178.132:8083/wizard" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:121.0) Gecko/20100101 Firefox/121.0" "-"
teemii-teemii-backend-1   | [2024-01-12 23:28:23.201 +0000] ERROR: ✗ sequelize model failed
teemii-teemii-backend-1   |     err: {
teemii-teemii-backend-1   |       "type": "Error",
teemii-teemii-backend-1   |       "message": "Error in UpAllMigration: SQLITE_BUSY: database is locked",
teemii-teemii-backend-1   |       "stack":
teemii-teemii-backend-1   |           Error: Error in UpAllMigration: SQLITE_BUSY: database is locked
teemii-teemii-backend-1   |               at UpAllMigration (/app/src/loaders/sequelize.js:113:11)
teemii-teemii-backend-1   |               at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)
teemii-teemii-backend-1   |               at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)
teemii-teemii-backend-1   |               at async ormConnect (/app/src/loaders/orm.js:38:31)
teemii-teemii-backend-1   |               at async createDatabase (/app/src/services/setupService.js:151:5)
teemii-teemii-backend-1   |               at async deployDB (/app/src/controllers/setupController.js:105:5)
teemii-teemii-backend-1   |     }
teemii-teemii-backend-1   | [2024-01-12 23:28:23.208 +0000] ERROR: Failed to deploy database
teemii-teemii-backend-1   |     err: {
teemii-teemii-backend-1   |       "type": "Error",
teemii-teemii-backend-1   |       "message": "Error in UpAllMigration: SQLITE_BUSY: database is locked",
teemii-teemii-backend-1   |       "stack":
teemii-teemii-backend-1   |           Error: Error in UpAllMigration: SQLITE_BUSY: database is locked
teemii-teemii-backend-1   |               at UpAllMigration (/app/src/loaders/sequelize.js:113:11)
teemii-teemii-backend-1   |               at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)
teemii-teemii-backend-1   |               at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)
teemii-teemii-backend-1   |               at async ormConnect (/app/src/loaders/orm.js:38:31)
teemii-teemii-backend-1   |               at async createDatabase (/app/src/services/setupService.js:151:5)
teemii-teemii-backend-1   |               at async deployDB (/app/src/controllers/setupController.js:105:5)
teemii-teemii-backend-1   |     }

Platform

desktop

Device

Apple Macbook M1

Operating System

macOs 14.2.1

Browser

Firefox

Additional Context

{"level":"WARN","time":"2024-01-12T23:19:20.796Z","msg":"Setup is not completed. Skipping backup."} {"level":"INFO","time":"2024-01-12T23:19:20.809Z","msg":"✓ Config Initialized. Setup completed: false"} {"level":"INFO","time":"2024-01-12T23:19:20.813Z","msg":"✓ Express Initialized"} {"level":"INFO","time":"2024-01-12T23:19:20.813Z","msg":"SocketIOLoader: initializing"} {"level":"WARN","time":"2024-01-12T23:19:20.827Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for anilist"} {"level":"WARN","time":"2024-01-12T23:19:20.885Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for bato"} {"level":"WARN","time":"2024-01-12T23:19:20.885Z","errors":["Key titles is missing from agent schema","Key vote is missing from agent schema","Key groupScan is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for bato"} {"level":"WARN","time":"2024-01-12T23:19:20.886Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for comickfun"} {"level":"WARN","time":"2024-01-12T23:19:20.887Z","errors":["Key vote is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for comickfun"} {"level":"WARN","time":"2024-01-12T23:19:20.889Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for goodreads"} {"level":"WARN","time":"2024-01-12T23:19:20.890Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for kitsu"} {"level":"WARN","time":"2024-01-12T23:19:20.892Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mal"} {"level":"WARN","time":"2024-01-12T23:19:20.893Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangadex"} {"level":"WARN","time":"2024-01-12T23:19:20.894Z","errors":["Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for mangadex"} {"level":"WARN","time":"2024-01-12T23:19:20.896Z","errors":["Key desc is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema lookupSchema validation failed for mangakakalot"} {"level":"WARN","time":"2024-01-12T23:19:20.896Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key score is missing from agent schema","Key startYear is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangakakalot"} {"level":"WARN","time":"2024-01-12T23:19:20.896Z","errors":["Key titles is missing from agent schema","Key volume is missing from agent schema","Key pages is missing from agent schema","Key groupScan is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for mangakakalot"} {"level":"WARN","time":"2024-01-12T23:19:20.898Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key score is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangapill"} {"level":"WARN","time":"2024-01-12T23:19:20.898Z","errors":["Key titles is missing from agent schema","Key vote is missing from agent schema","Key groupScan is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for mangapill"} {"level":"WARN","time":"2024-01-12T23:19:20.899Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangaupdates"} {"level":"WARN","time":"2024-01-12T23:19:20.901Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for nautiljon"} {"level":"INFO","time":"2024-01-12T23:19:20.901Z","msg":"Loaded 12 agents"} {"level":"WARN","time":"2024-01-12T23:19:20.901Z","msg":"No database path provided"} {"level":"WARN","time":"2024-01-12T23:19:20.901Z","msg":"if it's the first launch, consider it as normal"} {"level":"WARN","time":"2024-01-12T23:19:20.903Z","msg":"Kitsu Login failed: No username or password provided"} {"level":"WARN","time":"2024-01-12T23:19:20.903Z","msg":"Mangadex Login failed: No username or password provided"} {"level":"WARN","time":"2024-01-12T23:19:20.903Z","msg":"Mangadex Login failed: No username or password provided"} {"level":"INFO","time":"2024-01-12T23:19:20.907Z","msg":"Express running, now listening on port 3000"} {"level":"INFO","time":"2024-01-12T23:19:20.907Z","msg":"Socket.io server listening on port 1555"} {"level":"ERROR","time":"2024-01-12T23:19:20.907Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:16:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:19:20.909Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:26:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:19:20.927Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:37:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:19:20.939Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:44:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:19:20.940Z","err":{"type":"TypeError","message":"Cannot read properties of undefined (reading 'password')","stack":"TypeError: Cannot read properties of undefined (reading 'password')\n at ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:199:26)\n at async startServer (/app/server.js:39:5)"},"msg":"Failed to start the server:"} {"level":"INFO","time":"2024-01-12T23:19:24.931Z","msg":"Index successfully processed"} {"level":"INFO","time":"2024-01-12T23:19:24.932Z","msg":"Index count: 258746 items"} {"level":"INFO","time":"2024-01-12T23:19:24.932Z","msg":"Index size: 6.947023391723633 MB"} {"level":"INFO","time":"2024-01-12T23:19:43.562Z","msg":"Retrieving migrations"} {"level":"WARN","time":"2024-01-12T23:19:43.566Z","msg":"No migrations found in database"} {"level":"ERROR","time":"2024-01-12T23:19:49.130Z","err":{"type":"Error","message":"Error in UpAllMigration: SQLITE_BUSY: database is locked","stack":"Error: Error in UpAllMigration: SQLITE_BUSY: database is locked\n at UpAllMigration (/app/src/loaders/sequelize.js:113:11)\n at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)\n at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)\n at async ormConnect (/app/src/loaders/orm.js:38:31)\n at async createDatabase (/app/src/services/setupService.js:151:5)\n at async deployDB (/app/src/controllers/setupController.js:105:5)"},"msg":"✗ Failed to apply migrations"} {"level":"ERROR","time":"2024-01-12T23:19:49.132Z","err":{"type":"Error","message":"Error in UpAllMigration: SQLITE_BUSY: database is locked","stack":"Error: Error in UpAllMigration: SQLITE_BUSY: database is locked\n at UpAllMigration (/app/src/loaders/sequelize.js:113:11)\n at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)\n at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)\n at async ormConnect (/app/src/loaders/orm.js:38:31)\n at async createDatabase (/app/src/services/setupService.js:151:5)\n at async deployDB (/app/src/controllers/setupController.js:105:5)"},"msg":"✗ sequelize model failed"} {"level":"ERROR","time":"2024-01-12T23:19:49.136Z","err":{"type":"Error","message":"Error in UpAllMigration: SQLITE_BUSY: database is locked","stack":"Error: Error in UpAllMigration: SQLITE_BUSY: database is locked\n at UpAllMigration (/app/src/loaders/sequelize.js:113:11)\n at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)\n at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)\n at async ormConnect (/app/src/loaders/orm.js:38:31)\n at async createDatabase (/app/src/services/setupService.js:151:5)\n at async deployDB (/app/src/controllers/setupController.js:105:5)"},"msg":"Failed to deploy database"} {"level":"WARN","time":"2024-01-12T23:27:48.088Z","msg":"Setup is not completed. Skipping backup."} {"level":"INFO","time":"2024-01-12T23:27:48.112Z","msg":"✓ Config Initialized. Setup completed: false"} {"level":"INFO","time":"2024-01-12T23:27:48.118Z","msg":"✓ Express Initialized"} {"level":"INFO","time":"2024-01-12T23:27:48.119Z","msg":"SocketIOLoader: initializing"} {"level":"WARN","time":"2024-01-12T23:27:48.137Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for anilist"} {"level":"WARN","time":"2024-01-12T23:27:48.196Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for bato"} {"level":"WARN","time":"2024-01-12T23:27:48.198Z","errors":["Key titles is missing from agent schema","Key vote is missing from agent schema","Key groupScan is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for bato"} {"level":"WARN","time":"2024-01-12T23:27:48.201Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for comickfun"} {"level":"WARN","time":"2024-01-12T23:27:48.202Z","errors":["Key vote is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for comickfun"} {"level":"WARN","time":"2024-01-12T23:27:48.205Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for goodreads"} {"level":"WARN","time":"2024-01-12T23:27:48.209Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for kitsu"} {"level":"WARN","time":"2024-01-12T23:27:48.211Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mal"} {"level":"WARN","time":"2024-01-12T23:27:48.214Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangadex"} {"level":"WARN","time":"2024-01-12T23:27:48.215Z","errors":["Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for mangadex"} {"level":"WARN","time":"2024-01-12T23:27:48.219Z","errors":["Key desc is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema lookupSchema validation failed for mangakakalot"} {"level":"WARN","time":"2024-01-12T23:27:48.220Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key score is missing from agent schema","Key startYear is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangakakalot"} {"level":"WARN","time":"2024-01-12T23:27:48.222Z","errors":["Key titles is missing from agent schema","Key volume is missing from agent schema","Key pages is missing from agent schema","Key groupScan is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for mangakakalot"} {"level":"WARN","time":"2024-01-12T23:27:48.224Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key score is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangapill"} {"level":"WARN","time":"2024-01-12T23:27:48.226Z","errors":["Key titles is missing from agent schema","Key vote is missing from agent schema","Key groupScan is missing from agent schema","Key externalIds is missing from agent schema","Key externalLinks is missing from agent schema"],"msg":"Schema chapterSchema validation failed for mangapill"} {"level":"WARN","time":"2024-01-12T23:27:48.229Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for mangaupdates"} {"level":"WARN","time":"2024-01-12T23:27:48.235Z","errors":["Key description is missing from agent schema","Key coverImage is missing from agent schema","Key url is missing from agent schema"],"msg":"Schema mangaSchema validation failed for nautiljon"} {"level":"INFO","time":"2024-01-12T23:27:48.236Z","msg":"Loaded 12 agents"} {"level":"WARN","time":"2024-01-12T23:27:48.238Z","msg":"No database path provided"} {"level":"WARN","time":"2024-01-12T23:27:48.239Z","msg":"if it's the first launch, consider it as normal"} {"level":"WARN","time":"2024-01-12T23:27:48.242Z","msg":"Kitsu Login failed: No username or password provided"} {"level":"WARN","time":"2024-01-12T23:27:48.244Z","msg":"Mangadex Login failed: No username or password provided"} {"level":"WARN","time":"2024-01-12T23:27:48.245Z","msg":"Mangadex Login failed: No username or password provided"} {"level":"INFO","time":"2024-01-12T23:27:48.249Z","msg":"Express running, now listening on port 3000"} {"level":"INFO","time":"2024-01-12T23:27:48.250Z","msg":"Socket.io server listening on port 1555"} {"level":"ERROR","time":"2024-01-12T23:27:48.252Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:16:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:27:48.255Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:26:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:27:48.276Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:37:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:27:48.288Z","err":{"type":"Error","message":"Error saving configuration","stack":"Error: Error saving configuration\n at ConfigManager.saveConfig (/app/src/loaders/configManager.js:263:13)\n at async preferencesService.upsertUserPreferences (/app/src/services/preferencesService.js:137:7)\n at async #checkAndCreatePreference (/app/src/services/preferencesService.js:10:7)\n at async preferencesService.defaultScrobblersEntries (/app/src/services/preferencesService.js:44:5)\n at async ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:183:7)\n at async startServer (/app/server.js:39:5)"},"msg":"updateUserPreferences"} {"level":"ERROR","time":"2024-01-12T23:27:48.290Z","err":{"type":"TypeError","message":"Cannot read properties of undefined (reading 'password')","stack":"TypeError: Cannot read properties of undefined (reading 'password')\n at ScrobblersManager.registerScrobblers (/app/src/services/scrobblerService.js:199:26)\n at async startServer (/app/server.js:39:5)"},"msg":"Failed to start the server:"} {"level":"INFO","time":"2024-01-12T23:27:52.131Z","msg":"Index successfully processed"} {"level":"INFO","time":"2024-01-12T23:27:52.133Z","msg":"Index count: 258746 items"} {"level":"INFO","time":"2024-01-12T23:27:52.134Z","msg":"Index size: 6.947023391723633 MB"} {"level":"INFO","time":"2024-01-12T23:28:17.627Z","msg":"Retrieving migrations"} {"level":"WARN","time":"2024-01-12T23:28:17.631Z","msg":"No migrations found in database"} {"level":"ERROR","time":"2024-01-12T23:28:23.199Z","err":{"type":"Error","message":"Error in UpAllMigration: SQLITE_BUSY: database is locked","stack":"Error: Error in UpAllMigration: SQLITE_BUSY: database is locked\n at UpAllMigration (/app/src/loaders/sequelize.js:113:11)\n at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)\n at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)\n at async ormConnect (/app/src/loaders/orm.js:38:31)\n at async createDatabase (/app/src/services/setupService.js:151:5)\n at async deployDB (/app/src/controllers/setupController.js:105:5)"},"msg":"✗ Failed to apply migrations"} {"level":"ERROR","time":"2024-01-12T23:28:23.201Z","err":{"type":"Error","message":"Error in UpAllMigration: SQLITE_BUSY: database is locked","stack":"Error: Error in UpAllMigration: SQLITE_BUSY: database is locked\n at UpAllMigration (/app/src/loaders/sequelize.js:113:11)\n at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)\n at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)\n at async ormConnect (/app/src/loaders/orm.js:38:31)\n at async createDatabase (/app/src/services/setupService.js:151:5)\n at async deployDB (/app/src/controllers/setupController.js:105:5)"},"msg":"✗ sequelize model failed"} {"level":"ERROR","time":"2024-01-12T23:28:23.208Z","err":{"type":"Error","message":"Error in UpAllMigration: SQLITE_BUSY: database is locked","stack":"Error: Error in UpAllMigration: SQLITE_BUSY: database is locked\n at UpAllMigration (/app/src/loaders/sequelize.js:113:11)\n at async ORMService.checkApplyMigrations (/app/src/loaders/sequelize.js:213:12)\n at async checkApplyMigrations (/app/src/loaders/orm.js:17:21)\n at async ormConnect (/app/src/loaders/orm.js:38:31)\n at async createDatabase (/app/src/services/setupService.js:151:5)\n at async deployDB (/app/src/controllers/setupController.js:105:5)"},"msg":"Failed to deploy database"}

Code of Conduct

dokkaner commented 10 months ago

Hello, SQLite does not support installation on a share. You can see this discussion: #42

One solution is to map only the directory dedicated to mangas, but this is specific to your setup. See here: docker-compose example