OnlyOffice Update Failed - White Page

I just attempted to update the Docker image for the OnlyOffice Document Server running in Subdirectory (Subfolder) mode on Seafile 6.2.5 CE without success. When I open a document running a container based on the latest/current image I get a white page.

In Chromium the Javascript error on the resultant document page is:

“Failed to load resource: the server responded with a status of 502 (Bad Gateway) api.js”
“Uncaught ReferenceError: DcosAPI is not defined”

At the time of this post the latest version (or tag) of onlyoffice/documentserver is 5.1.0.115, released three days ago. The previous version of the Document Server is 5.0.7.38 released two months ago. The releases of onlyoffice/documentserver are recorded here for reference.

If I roll back to the previous image (5.0.7.38) things work again.

Does anyone else have a white-page issue with image 5.1.0.115? Is there a special procedure or trick involved in updating images and containers in order for them to work with Seafile?

The procedure used is:

Stop Seafile
Stop oods (the name of onlyoffice/documentserver)
Delete oods container
Update (pull) latest onlyoffice/documentserver
Spin-up new container using latest onlyoffice/documentserver

sudo docker run -dit -p 88:80 --restart always --name oods onlyoffice/documentserver

Start Seafile
Restart Nginx

No changes are made to the server or its configuration. Memcached is not employed by Seafile.

Thanks for your comments & assistance. I appreciate your help.

Seafile CE 6.2.5
Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-116-generic x86_64)

That appears to be a possible bug… DcosAPI is not defined… I’m betting that the code is supposed to be DocsAPI rather than DcosAPI… Simple typo in the programming.

[Update]

I looked further into this and it does seem to be the case. It’s supposed to be DocsAPI.

Sorry, my mistake. The error does read ‘DocsAPI is not defined.’

No problem… Even still, it appears to be a bug… Usually, a “not defined” message on a variable means that a variable was not defined for a particular scope. And, since it works when you revert to the previous version, that is more evidence. Unfortunately, I know nothing of OnlyOffice, so I’m not familiar with the code. Hopefully, someone will see this and have a solution.

I posted a question on the OnlyOffice Support Forum (here) about the white page when using Document Server 5.1. The response from Support is that the API has not changed in 5.1:

“Access to the API was not changed in 5.1 version”

web-apps/apps/api/documents/api.js

It could also be a version mismatch with a dependency. As an example, earlier this week, someone was getting a “not defined” error with videos. That problem turned out to be that the external movie player expected Python ver 3, but only 2.7 was installed.

Unfortunately, I know little or nothing about OnlyOffice and what its dependencies are. DOCSAPI sounds like a variable native to OnlyOffice, and it’s not getting passed from OnlyOffice to Seafile.

They may not have changed the API itself, but that doesn’t mean they did not change a dependency requirement. The fact that it works when you revert to a previous version reveals that it almost has to be something that they changed with the new version.

I agree. We’re in a holding pattern right now.

The roll-back is in many respects good news for Seafile. At least we have something that still works.

OnlyOffice Support knows about the issue now so maybe they will take a look at their Docker image and tweak it for the next release. I have to say that they are very responsive to feedback and their releases are well done and very worthwhile. They seem to be working very hard on their project, even the CE version.

That said, I can’t believe that Seafile integration is very high on their list of priorities but I am hopeful nonetheless.

I can confirm the behaviour over here too, updated and got the same error, rolled back and it works again.

1 Like

The problem is to do with mounting /etc/onlyoffice/documentserver so as to override the config files to whitelist IP addresses (rather than having the security token built into seafile properly)

If I remove this mount and use the files in the docker container, it upgrades fine (but now leaves the document server vulnerable again until re-configured properly)

Just use a long random string as subfolder and you are fine. Easier until it is properly implemented.

I’m confused. Can you clarify the situation? Is this an issue in the container? -Thanks

It looks like onlyoffice/documentserver:5.1.1.23 was released a couple days ago that works with Seafile 6.2.5 CE.

My oods System Updates the docker container once every week. Its a simple bash script handling all of it. Monitoring warns me if there was an error or the system did not come back as expected.

I can post the script on GitHub.

Yes, please post. I think it would be generally useful to all Onlyoffice admins. Many thanks!

This script will also update the system and reboot. I run a dedicated cloud instance for the OODS. I don’t care about traffic in this case. Throw away and pull again.

1 Like

Much appreciated. Thanks again!

1 Like