ShokoAnime / ShokoServer

Repository for Shoko Server.
http://shokoanime.com/shoko-server/
MIT License
376 stars 74 forks source link

Shoko can't find any files #1057

Closed ghost closed 1 year ago

ghost commented 1 year ago

I had to reinstall Shoko because of needing to switch from snap Docker to actual docker, but after doing fresh install of Shoko, I can't get it to find files at all.

There should not be issues with permissions and there is 0 errors in log either because well.. It can't find or see any files at all. $USER is in docker group too.

sudo docker run -d --name shokoserver --restart always -p 8111:8111 -v "$HOME/.shoko:/home/shoko/.shoko" -v "/path/to/anime:/mnt/c62e3ef2-3132-4015-9ee1-637926405c19/Anime" -v "/path/to/import:/mnt/a0b07893-5fb3-476b-8ec9-e66a78ad370c/Media/Import" -e PUID=$UID -e PGID=$GID shokoanime/server:latest

That was the code I used for running Shoko and I learned from my past mistake so I know that is not the issue either. I have no issues with my other dockers either which is why I'm bit stumped with this, although they don't really have to access any files like Shoko needs to.

Here is some useless log text: 2023-04-13 14:42:11 Bound to local address: 0.0.0.0:4556 - Port: 4556 (InterNetwork) 2023-04-13 14:42:11 Bound to remote address: 94.130.237.200 : 9000 2023-04-13 14:42:11 starting ping timer... 2023-04-13 14:42:12 Setting up database... 2023-04-13 14:42:12 Database Connection OK! 2023-04-13 14:42:12 Starting Server: Initializing Session Factory... 2023-04-13 14:42:14 Starting Server: Shoko.Server.Databases.SQLite - CreateAndUpdateSchema() 2023-04-13 14:42:14 Starting Server: RepoFactory.Init() 2023-04-13 14:42:14 Starting Server: Database - Populating Data (Users)... 2023-04-13 14:42:14 Starting Server: Database - Populating Data (Group Filters)... 2023-04-13 14:42:14 Starting Server: Database - Populating Data (Locked Group Filters)... 2023-04-13 14:42:14 Starting Server: Database - Populating Data (Rename Script)... 2023-04-13 14:42:14 Starting Server: Database - Populating Data (Custom Tags)... 2023-04-13 14:42:14 Starting Server: RepoFactory.PostInit() 2023-04-13 14:42:14 Initializing Session Factory... 2023-04-13 14:42:14 Watching ImportFolder: Anime || /mnt/c62e3ef2-3132-4015-9ee1-637926405c19/Anime/ 2023-04-13 14:42:14 Parsed ImportFolderLocation: /mnt/c62e3ef2-3132-4015-9ee1-637926405c19/Anime/ 2023-04-13 14:42:14 Watching ImportFolder: Import || /mnt/a0b07893-5fb3-476b-8ec9-e66a78ad370c/Media/Import/ 2023-04-13 14:42:14 Parsed ImportFolderLocation: /mnt/a0b07893-5fb3-476b-8ec9-e66a78ad370c/Media/Import/ 2023-04-13 14:42:14 Starting Server: Complete! I've cut out the "Settings.FileQualityPreferences.PreferredVideoCodecs: ["hevc","h264","mpeg4","vc1","flv","mpeg2","mpeg1","vp6f"]" etc as they are all the default ones.

Just sidenote: Really loving the new WebUI for server.

Cazzar commented 1 year ago

It looks like you have the order of the -v parameters around

If wanting to use the /path/to the correct command is

sudo  docker run -d --name shokoserver \
    --restart always -p 8111:8111 \
    -v "$HOME/.shoko:/home/shoko/.shoko" \
    -v "/mnt/c62e3ef2-3132-4015-9ee1-637926405c19/Anime:/path/to/anime" \
    -v "/mnt/a0b07893-5fb3-476b-8ec9-e66a78ad370c/Media/Import:/path/to/import" \
    -e PUID=$UID \
    -e PGID=$GID \
    shokoanime/server:latest 

This will map the following way:

Host Container
/mnt/c62e3ef2-3132-4015-9ee1-637926405c19/Anime /path/to/anime
/mnt/a0b07893-5fb3-476b-8ec9-e66a78ad370c/Media/Import /path/to/import
ghost commented 1 year ago

Thank you! This worked.

Here it's different way around though: https://docs.shokoanime.com/server/install/ kuva

I think it might be good idea to update the documentation ASAP.

Cazzar commented 1 year ago

I was mostly adapting your command swapping them, the way in the documentation is the correct way around, @ElementalCrisis are we able to add something to clarify this in the docs?

ghost commented 1 year ago

I was mostly adapting your command swapping them, the way in the documentation is the correct way around, @ElementalCrisis are we able to add something to clarify this in the docs?

So this does end up sort of barely working, it will not be able to move any of the files from drop source to drop destination though. "Could not find a valid destination: "/path/to/import/ .mp4" is what the log says for each file.

ElementalCrisis commented 1 year ago

Yeah, I've asked @revam to add it since IIRC, he rewrote them not too long ago.

revam commented 1 year ago

Added a note about the path order in the volume mount arguments supplied to docker in our docs.

revam commented 1 year ago

As for why you're getting those error messages @Yukkun, there can be many reasons, but I will advice you to run one of the "Remove Missing Files" or "Remove Missing Files (Keep in MyList)" actions, then maybe follow it up with a "Run Import" action, then check if the problem persists.

ghost commented 1 year ago

As for why you're getting those error messages @Yukkun, there can be many reasons, but I will advice you to run one of the "Remove Missing Files" or "Remove Missing Files (Keep in MyList)" actions, then maybe follow it up with a "Run Import" action, then check if the problem persists.

Thank you. I got it fixed other way, but I'll keep this in mind next time.

revam commented 1 year ago

Closing this seems it seems to be resolved.