Today I have installed Xibo 1.8.2 using Docker Toolbox. I am able to access the CMS and can also link the player to it. However I’m accounting a problem. After creating a layout the Xibo player for Windows will show this layout. However as soon as I will make a change to the layout (doesn’t matter how small, e.g. adding one extra character to a text field, moving a region) the layout stops working. Xibo player will only show the splash screen.
In the screenshot below layout 5 is planned for this display. When I start the Xibo player after creating the layout with only a text field it is shown. I can restart the player and it is still shown. Then I add one character to the text field and the layout cannot be loaded anymore.
Verified all modules, I have tried this earlier today without any results.
Player is using default location, also tried on another PC, this results in the same problem.
Layout shows message that it’s ready to be played.
Today I have reïnstalled Xibo in docker. Many installs failed because no ‘shared’ folder was created. When there was no shared folder created I was able to change the layout and restart the player. However then changes are not saved after a reboot so that isn’t really an option. After re-installing docker and xibo a couple of times suddenly the shared folder was created and also the problem was back. Again i’m not able to change the layout. The status screen shows every file is downloaded except the XLF file.
Actually it seems it did download everything, that two files might be ‘red’ only because of cache, which you can clear by Edit&Save the Display record.
I’d expect there to be more error messages in player status window / CMS logs related to this issue.
I have been able to narrow down the problem a bit.
Screenshots below show the 1.xlf file. First one is the updated on the server. Second one is on the client. It shows in windows explorer that is updated but it doesn’t contain the new text, however it shows a lot of nul characters (in notepad they look spaces). To me it seems that the file in the docker container is corrupted, the one in the shared folder however is the right one. If I use ‘docker-compose stop’ and ‘docker-compose start’ then the right file will be loaded by the player.
I can’t find any more error in the cms. Don’t know if it is an error but saw: "Cache miss for setCurrentLayoutId on display OF-LP-03’. Layout status shows a checkmark, display status shows a cross.
Only thing changed in config file is the MySQL password. Installed in folder C:\Users\xibo-docker using command ‘docker-compose up -d’.
Running with default ports. Configured virtualbox to forward port 8081 to port 80. CMS is reachable from browser and player is able to connect.
Finally solved this issue.
The issue is related to the Apache setting ‘EnableSendfile’. This setting has to be turned off when using Docker toolbox because that’s based on Virtualbox.
Here’s how i changed this setting. I’m new to docker so don’t know if this is the best way to do this.
Open the Docker quickstart terminal:
Command docker exec -it xibodocker_cms-web_1 bash
This will open bash inside the docker container.
Commands: cd /etc/apache2/
Use vi to edit the file “apache2.conf” (for more information about vi see: https://www.cs.colostate.edu/helpdocs/vi.html)
Add the line EnableSendfile off to the bottom of this config file
After that restart the Apache webserver using /etc/init.d/apache2 restart
Then close the terminal. Xibo player works now just fine.
Ah right, I forgot that it is most likely hidden in settings, you could check that in database, but if everything is working fine now and the downloads on the player are reliable then there is no need to do that.