Storage question the 100000

Hello again…
I have Bluecherry 3.x running in an docker setup on my debian openmediavault.
Found my cams, my streams etc…ram, cpu time all buenno…
But whatever i do, i cannot get the storage path accepted…
The folder has these attributs:
drwxrwsrwx+ 2 bluecherry bluecherry 4096 Nov 13 18:00 Recordings
And lives at this path:
/srv/dev-disk-by-label-Raid6/Recordings
But as soon i put that path into the storage field and hit save, i get:
Server could not open the specified directory " /srv/dev-disk-by-label-Raid6/Recordings ". See Note 2.
And note 2 says:
Note 2: Before adding a new folder, ensure that the:

  • folder exists
  • folder is empty
  • folder belongs to user bluecherry, group bluecherry.

To create directory run: "sudo mkdir -p "
To set permissions run: "sudo chmod 770
To set ownership run: "sudo chown -R bluecherry:bluecherry ".
Which i did…

Any suggestions?
File system is Ext4

Thx in advance

Can you run this:

sudo -u bluecherry touch /srv/dev-disk-by-label-Raid6/Recordings/test

then

sudo -u bluecherry ls -l /srv/dev-disk-by-label-Raid6/Recordings/test

Yes…
Here the resut…thx for your time
root@Pro6:/# sudo -u bluecherry touch /srv/dev-disk-by-label-Raid6/Recordings/test
root@Pro6:/# sudo -u bluecherry ls -l /srv/dev-disk-by-label-Raid6/Recordings/test
-rw-rw-rw-+ 1 bluecherry bluecherry 0 Nov 18 20:24 /srv/dev-disk-by-label-Raid6/Recordings/test
root@Pro6:/#

Quick question on the side…
What is the reason for this restrictive bluecherry user only storage functionality…?
I mean a share/folder with standard chmod 777 right should be sufficient to read, write and delete according to retention settings…am i am wrong?

Thx

We restrict the permissions for commercial users who don’t necessarily want unauthorized people accessing the video directories.

You can always add yourself to the bluecherry group so you can browse the files without changing permissions (777 is wide open).

Thanks

Just my thoughts: You say you’re running inside a docker environment? Does the bluecherry user and group have the same uid and gid inside of the container as outside?

Hello…
@aaronouthier…i am not to familiar with docker…so that i might frased wrong or similar…
I am just having the docker bluecherry installed that is mentioned here in the forum from github.
So i am not sure if the user id’s are the same and even did not know that they could vary…
As far as i read into it, docker seems to create a fake world via mirror of filesystem…and my Openmediavault debian filesystem and the docker filesystem seem not to sync…
Hard to explain…
So let me know what i could do to intwist this…

Okay, so first off: Docker doesn’t create a ‘mirror filesystem’, and it’s not supposed to stay in sync. It’s closer to a Virtual Machine in some regards. It’s not actually a VM, but in some ways, it acts like one.

If you’re going to run this inside of a Docker container, I first need to know: Are you using a docker-compose.yml file? I suppose what I want to know is what instructions did you use to create the Bluecherry docker environment?

Essentially, you need to mount the “real” recording folder as '/var/lib/bluecherry/recordings" in the Docker container. I’m not familiar with OpenMediaVault, so this might or might not exactly apply to you.

Don’t try to blindly follow this. However, if you used the instructions listed here: https://raw.githubusercontent.com/bluecherrydvr/bluecherry-docker/master/README.md , then you should be ok.

First CD to the folder with the docker-compose.yml file for your BlueCherry docker install.

Type docker-compose down to bring down the bluecherry environment temporarily. Then, use your favorite text editor to modify the docker-compose.yml file.

Find the section that says:

volumes:
  - /media/bluecherry:/var/lib/bluecherry/recordings
#######################################################
# Enable this only if you have a supported VAAPI device and /dev/dri exists on the host system.

Since you want to use /srv/dev-disk-by-label-Raid6/Recordings as your recording location, change:

- /media/bluecherry:/var/lib/bluecherry/recordings

to

- /srv/dev-disk-by-label-Raid6/Recordings:/var/lib/bluecherry/recordings

Save the file, and exit the text editor. Then, bring the container back up with docker-compose up -d .

Now, in your web browser, open the BlueCherry interface, and set the storage location back to /var/lib/bluecherry/recordings . You should now have the recordings pointing to the right place. Ie: Anything BlueCherryDVR system tries to put into what it thinks is /var/lib/bluecherry/recordings , will actually end up in /srv/dev-disk-by-label-Raid6 .

As for permissions - on your host system, cd to /srv/dev-disk-by-label-Raid6 , and type chown -R 1000:1000 Recordings .

Notes for the above instructions:

  • In order to make proper sentences, I use commas between phrases and periods at the end of sentences. Sometimes the last part of a phrase or sentence is a command to type. Don’t include the comma or period in those commands!
  • If you type the commands I gave, and you’re not already the ROOT user, you may get “access denied” or “permission denied” errors. If that happens, type the same command again, but put the word “sudo” at the beginning of the command.

@aaronouthier Hello and thx for the time you spend to answer in that detail.
I used the github bluecherry since the debian that ooenmediavault is based on, alread y has an apache running on port 80, so that the standard install script of bluecherry failed.
Since u saw that my docker knowledge is limited, i cannot answer your question what or how i did create the docker and if i user a yml file.
But i will def check your instructions to what extend they apply and hopefully get some more into the subject to get the recoding folder on my raid6 and off the root partition since i want to shsre it out via smb.
My debian version would be sufficient to run bluecherry native, i am just not deep enough in the subject to change the install in a way that a used up port 80 is not a problem.
I keep you posted…and thx again

Edit1: Followed your instructions and they worked like a charm…
Kept the answer as a copy for furhter needs