Several friction points when installing OnlyOffice via install-onlyoffice.sh (Docker deployment)
Several friction points when installing OnlyOffice via install-onlyoffice.sh (Docker deployment)
Follow-up to cryptpad/documentation#156 — after getting the base CryptPad instance running, I went on to install OnlyOffice (for the Document/Spreadsheet/Presentation apps) following the Docker instructions. It completed successfully in the end, but hit a few issues worth flagging. Here are Claude's comments:
1. The license-review step fails with a 404, blocking installation entirely unless you know the workaround
ask_for_license() fetches the license text from:
https://raw.githubusercontent.com/ONLYOFFICE/web-apps/master/LICENSE.txtThis currently returns a 404 (the file appears to have moved, or the branch reference is stale), so the script opens less on an empty result and hangs waiting for input with nothing to review. It's not obvious from the output that this is a broken upstream URL rather than a genuine script hang — I initially thought the terminal had frozen.
The script does support skipping this via a pre-set ACCEPT_LICENSE environment variable, which is a reasonable workaround, but:
- This escape hatch isn't mentioned in the admin guide's OnlyOffice installation section, so a first-time installer has no way to discover it without reading the script source directly.
- Even with the workaround, it'd be worth fixing the underlying URL (or pointing at a pinned tag/commit instead of
master, which seems to be what actually broke) so the intended license-review flow works as designed for people who don't passACCEPT_LICENSE.
2. Permission denied on onlyoffice-conf/onlyoffice-dist, for the same UID-4001 reason as the main data folders — but not flagged at this step specifically
The main installation guide does document chowning data, customize, onlyoffice-dist, and onlyoffice-conf to UID 4001 upfront if you create these folders before first starting the container. However, if you add OnlyOffice as a later step (as I did — get CryptPad running first, add OnlyOffice afterward), it's easy to create the two new folders fresh via a host user account and miss that they need the same UID-4001 ownership as everything else. The failure surfaces well into the install process:
./install-onlyoffice.sh: line 134: /cryptpad/onlyoffice-conf/onlyoffice.properties: Permission denied...after the script has already spent a few minutes downloading and unpacking OnlyOffice's editor components, which is a frustrating point to discover a permissions issue. A pre-flight check at the very start of the script (verifying it can actually write to $CONF_DIR before doing any downloading) would surface this immediately instead of after a multi-minute download.
3. A transient DNS resolution failure for release-assets.githubusercontent.com (likely not CryptPad's fault, but worth a retry/resilience note)
Mid-install, the script failed with:
curl: (6) Could not resolve host: release-assets.githubusercontent.com (Timeout while contacting DNS servers)This resolved itself on retry a few minutes later, so it was likely a transient issue with GitHub's release-asset CDN or Docker's embedded DNS resolver, not a bug in CryptPad's script. That said, since the script already tracks progress via onlyoffice.properties and resumes cleanly from where it left off, it might be worth documenting explicitly ("if a download step fails with a DNS/network error, simply re-run the script — it will skip already-completed steps") so people don't assume a failure here means something is broken.
Once past these three points, the install completed cleanly and OnlyOffice's Document/Spreadsheet apps work well, including .docx import. Happy to provide more detail on any of these if useful.
Source: cryptpad/cryptpad