Skip to content

Commit 1ba014d

Browse files
chripjuliusknorr
authored andcommitted
docs: refine Nextcloud Office configuration and installation pages
- Rewrite configuration page to match actual settings.php UI structure exactly: server settings, common settings, editor customization, common templates, security/watermarks — with correct field labels - Add Docker Compose example for internal URL configuration - Fix verify_peer_off config.php value (must be string "true", not bool) - Add eurooffice:documentserver occ command (without --check prints URL) - Fix installation overview: remove H2 sections so sub-pages appear correctly in sidebar navigation - Fix heading overline length on euro-office/index.rst Assisted-by: claude-code:claude-sonnet-4-6 Signed-off-by: Christoph Schaefer <christoph.schaefer@nextcloud.com>
1 parent cf581da commit 1ba014d

3 files changed

Lines changed: 172 additions & 92 deletions

File tree

admin_manual/office/euro-office/configuration.rst

Lines changed: 155 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -20,113 +20,193 @@ Alternatively, install the app using the :command:`occ` command:
2020
2121
php occ app:install eurooffice
2222
23-
Connecting to the Document Server
24-
-----------------------------------
23+
Server settings
24+
---------------
2525

26-
1. Open :menuselection:`Settings --> Administration --> Euro-Office`.
27-
2. Enter the Document Server URL in the **Euro-Office Docs address** field:
26+
Open :menuselection:`Settings --> Administration --> Euro-Office` to configure the connection.
2827

29-
.. code-block:: text
28+
**Nextcloud Office address**
29+
The URL of the Euro-Office Document Server, accessible from both the Nextcloud server
30+
and end-user browsers:
3031

31-
https://<documentserver>/
32+
.. code-block:: text
3233
33-
where ``<documentserver>`` is the hostname or IP of the machine running Euro-Office Document Server.
34+
https://<documentserver>/
3435
35-
3. Enter the **Secret key** — this must match the JWT secret configured on the Document Server:
36+
**Disable certificate verification (insecure)**
37+
Disables TLS certificate checks. Only enable this in test environments.
3638

37-
- **deb/rpm install:** the secret is in ``/etc/euro-office/documentserver/local.json``
38-
under ``services.CoAuthoring.secret.browser.string``.
39-
- **Docker install:** the value of the ``JWT_SECRET`` environment variable used when
40-
starting the container.
39+
**Secret key (leave blank to disable)**
40+
The JWT shared secret. Must match the value configured on the Document Server:
4141

42-
4. Click **Save**.
42+
- **deb/rpm install:** ``/etc/euro-office/documentserver/local.json`` →
43+
``services.CoAuthoring.secret.browser.string``
44+
- **Docker install:** the ``JWT_SECRET`` environment variable
4345

44-
A green status indicator confirms a successful connection.
46+
Click **Save** to apply. A green status indicator confirms a successful connection.
4547

4648
Advanced server settings
47-
--------------------------
49+
^^^^^^^^^^^^^^^^^^^^^^^^
50+
51+
Expand **Advanced server settings** when the public Document Server URL is not directly
52+
reachable from your Nextcloud host (for example, behind a NAT or split-horizon DNS):
53+
54+
**Authorization header (leave blank to use default header)**
55+
The HTTP header used to carry the JWT token. Defaults to ``Authorization``.
56+
57+
**Nextcloud Office address for internal requests from the server**
58+
The URL Nextcloud uses to contact the Document Server directly (server-to-server).
59+
Must be reachable from the Nextcloud host.
4860

49-
If the public Document Server URL is not reachable from your Nextcloud server (for example,
50-
behind a NAT or a split-horizon DNS), configure separate addresses for server-side and
51-
client-side communication:
61+
**Server address for internal requests from Nextcloud Office**
62+
The URL the Document Server uses to send callbacks back to Nextcloud. Must be
63+
reachable from the Document Server host.
5264

53-
- **Euro-Office Docs address for internal requests from the server** — the URL Nextcloud uses
54-
to contact the Document Server directly (must be reachable from the Nextcloud host).
55-
- **Nextcloud address available from Document Server** — the URL the Document Server uses
56-
to send callbacks back to Nextcloud (must be reachable from the Document Server host).
65+
.. tip::
66+
**Docker Compose example**
67+
68+
When Nextcloud and Euro-Office run as services in the same Docker Compose network,
69+
containers can reach each other by service name. Given a ``compose.yml`` with services
70+
named ``nextcloud`` and ``eurooffice``:
71+
72+
- **Nextcloud Office address** (public): ``https://office.example.com/``
73+
- **Nextcloud Office address for internal requests from the server**: ``http://eurooffice/``
74+
- **Server address for internal requests from Nextcloud Office**: ``http://nextcloud/``
75+
76+
The public address is used by end-user browsers. The internal addresses bypass the
77+
public reverse proxy and let the two containers communicate directly over the
78+
shared Docker network.
5779

5880
Common settings
5981
---------------
6082

83+
These settings become available after a successful server connection.
84+
6185
.. list-table::
6286
:header-rows: 1
63-
:widths: 35 65
87+
:widths: 50 50
6488

6589
* - Setting
6690
- Description
91+
* - Allow the following groups to access the editors
92+
- Restricts editor access to specified Nextcloud groups.
93+
* - Use Nextcloud Office to generate a document preview
94+
- Generates thumbnail previews for Office files. Takes up additional disk space.
6795
* - Open file in the same tab
6896
- Opens documents inside Nextcloud instead of a new browser tab.
6997
* - Enable sharing
70-
- Allows users to share files directly from within the editor.
71-
* - Generate document preview
72-
- Uses Euro-Office to generate thumbnail previews for Office files.
73-
* - Advanced document permissions
98+
- Allows users to share files from within the editor. May increase editor load time.
99+
* - Provide advanced document permissions
74100
- Enables per-user fine-grained permissions (review-only, comment-only, etc.)
75-
on shared files.
101+
on shared files via the sharing dialog.
102+
* - Keep metadata for each version once the document is edited
103+
- Stores version metadata each time a document is saved. Takes up additional disk space.
104+
* - Enable background connection check to the editors
105+
- Runs a periodic cron job to verify the Document Server is reachable.
76106
* - Enable e-mail notifications
77-
- Sends e-mail notifications when a document is commented or edited.
78-
* - Keep version history
79-
- Stores metadata for each version created while editing.
80-
* - Document protection
81-
- Sets who can protect/unprotect documents: document owners only (``owner``)
82-
or all editors (``all``).
83-
* - Restrict access to groups
84-
- Limits editor access to specific Nextcloud groups.
85-
86-
Customization settings
87-
-----------------------
107+
- Sends e-mail notifications on comments and edits.
108+
* - Unknown author display name
109+
- Display name shown for edits made by users not known to Nextcloud.
110+
111+
**Default application for opening the format**
112+
Checkboxes for each supported file format. When enabled for a format, Nextcloud
113+
Office becomes the default handler when that file type is clicked.
114+
115+
**Open the file for editing**
116+
Checkboxes for formats that can be edited natively. Enabling a format allows users
117+
to edit it directly. Note that saving back to some formats may result in data loss
118+
due to format restrictions.
119+
120+
Editor customization settings
121+
------------------------------
88122

89123
.. list-table::
90124
:header-rows: 1
91-
:widths: 35 65
125+
:widths: 50 50
92126

93127
* - Setting
94128
- Description
129+
* - Keep intermediate versions when editing (forcesave)
130+
- Saves an intermediate version each time a user explicitly saves, in addition
131+
to the final version saved when the editor closes.
132+
* - Enable live-viewing mode when accessing file by public link
133+
- Shows live updates to external viewers accessing a file via a public link.
95134
* - Display Chat menu button
96135
- Shows or hides the in-editor chat panel.
97-
* - Compact header
98-
- Displays a more compact toolbar header in the editor.
99-
* - Display Feedback & Support button
136+
* - Display the header more compact
137+
- Displays a more compact toolbar header.
138+
* - Display Feedback & Support menu button
100139
- Shows or hides the Feedback & Support entry in the editor menu.
101-
* - Forcesave
102-
- Saves an intermediate version of the document each time a user explicitly
103-
saves (in addition to the final version saved on editor close).
104140
* - Display Help menu button
105141
- Shows or hides the Help entry in the editor menu.
106-
* - Review display mode
107-
- Default mode for viewing tracked changes: ``original``, ``markup``, or ``final``.
108-
* - Editor theme
109-
- Default color theme for the editor interface.
110-
* - Run document macros
111-
- Allows macros embedded in documents to execute.
112-
* - Enable plugins
113-
- Allows third-party plugins inside the editor.
114-
115-
Watermark settings
116-
------------------
117142

118-
Watermarks are overlaid on documents when they are opened by specified users or via shares.
143+
**REVIEW mode for viewing**
144+
Default mode for displaying tracked changes: **Markup**, **Final**, or **Original**.
145+
146+
**Default editor theme**
147+
Color theme for the editor interface: **Same as system**, **Light**, or **Dark**.
148+
149+
Common templates
150+
----------------
151+
152+
Administrators can upload shared document templates that are available to all users
153+
when creating new files. Templates are managed in the **Common templates** section of
154+
the admin settings page.
155+
156+
Security
157+
--------
119158

120-
Enable watermarking under :menuselection:`Settings --> Administration --> Euro-Office --> Security`.
159+
**Enable plugins**
160+
Allows third-party plugins to run inside the editor.
121161

122-
The watermark text supports the following placeholders:
162+
**Run document macros**
163+
Allows macros embedded in documents to execute.
164+
165+
**Enable document protection for**
166+
Controls who can protect or unprotect documents:
167+
168+
- **All users** — any editor can protect or unprotect the document.
169+
- **Owner only** — only the file owner can change protection.
170+
171+
Watermarks
172+
^^^^^^^^^^
173+
174+
Watermarks are overlaid on documents when they are opened by specified users or via shares.
175+
Enable **Enable watermarking** to configure the watermark.
176+
177+
**Watermark text** — the text overlaid on the document. Supported placeholders:
123178

124179
- ``{userId}`` — Nextcloud user ID
125180
- ``{userDisplayName}`` — user's display name
126181
- ``{email}`` — user's e-mail address
127182
- ``{date}`` — current date
128183
- ``{themingName}`` — Nextcloud instance name from theming settings
129184

185+
Watermark visibility can be configured per audience:
186+
187+
.. list-table::
188+
:header-rows: 1
189+
:widths: 50 50
190+
191+
* - Option
192+
- When the watermark is shown
193+
* - Show watermark on tagged files
194+
- Files with specific system tags (requires the System Tags app).
195+
* - Show watermark for users of groups
196+
- Users belonging to selected groups.
197+
* - Show watermark for all shares
198+
- Any user who accesses the file via a share.
199+
* - Show watermark for read only shares
200+
- Users with read-only share access.
201+
* - Show watermark for all link shares
202+
- Anyone accessing the file via a public link.
203+
* - Show watermark for download hidden shares
204+
- Public links where file download is disabled.
205+
* - Show watermark for read only link shares
206+
- Public links with read-only access.
207+
* - Show watermark on link shares with specific system tags
208+
- Public links on files with specific system tags.
209+
130210
occ commands
131211
------------
132212

@@ -140,6 +220,14 @@ Settings can also be managed via :command:`occ`:
140220
# Write a setting
141221
php occ config:app:set eurooffice DocumentServerUrl --value="https://office.example.com/"
142222
223+
The ``eurooffice:documentserver`` command shows the configured server URL and optionally
224+
tests the connection:
225+
226+
.. code-block:: bash
227+
228+
# Print the currently configured Document Server URL
229+
php occ eurooffice:documentserver
230+
143231
# Check the connection to the Document Server
144232
php occ eurooffice:documentserver --check
145233
@@ -153,8 +241,12 @@ Settings can also be set directly in ``config/config.php`` under the ``eurooffic
153241
"eurooffice" => [
154242
"DocumentServerUrl" => "https://office.example.com/",
155243
"jwt_secret" => "your-secret",
156-
"verify_peer_off" => false,
244+
"verify_peer_off" => "true",
157245
],
158246
159-
Settings defined in ``config.php`` are used as fallback when no value is set via the admin UI
160-
or :command:`occ`. The UI takes precedence.
247+
.. note::
248+
``verify_peer_off`` is read as a string — use ``"true"`` to disable certificate
249+
verification, not a PHP boolean.
250+
251+
Settings defined in ``config.php`` are used as fallback when no value is set via the
252+
admin UI or :command:`occ`. The UI takes precedence.

admin_manual/office/euro-office/index.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
===============
1+
================
22
Nextcloud Office
3-
===============
3+
================
44

55
Nextcloud Office is Nextcloud's built-in office solution, powered by Euro-Office Document Server.
66
It enables real-time collaborative editing of text documents, spreadsheets, and presentations

admin_manual/office/euro-office/installation.rst

Lines changed: 15 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,51 +2,39 @@
22
Installation
33
============
44

5-
Nextcloud Office requires a running Euro-Office Document Server that Nextcloud can reach over the network.
6-
The Document Server is packaged separately and must be installed before connecting Nextcloud to it.
7-
8-
Supported platforms
9-
-------------------
5+
Nextcloud Office requires a running Euro-Office Document Server that Nextcloud can reach
6+
over the network. Choose the installation method that fits your infrastructure:
107

118
.. list-table::
129
:header-rows: 1
13-
:widths: 30 20 20
10+
:widths: 40 20 40
1411

1512
* - Distribution
1613
- Architectures
1714
- Method
1815
* - Ubuntu 24.04 LTS (Noble)
1916
- amd64, arm64
20-
- .deb package
17+
- :doc:`installation_ubuntu`
2118
* - Debian 12 (Bookworm)
2219
- amd64, arm64
23-
- .deb package
20+
- :doc:`installation_debian`
2421
* - Any Linux host
2522
- amd64, arm64
26-
- Docker
23+
- :doc:`installation_docker`
24+
25+
**Minimum system requirements:**
2726

28-
Installation methods
29-
--------------------
27+
- 4 GB RAM (8 GB recommended for multi-user deployments)
28+
- 10 GB disk space
29+
- The Document Server and Nextcloud must be able to reach each other over HTTPS in production
3030

31-
- :doc:`installation_ubuntu`
32-
- :doc:`installation_debian`
33-
- :doc:`installation_docker`
31+
.. note::
32+
The Document Server does not need to run on the same host as Nextcloud.
33+
A reverse proxy (nginx or Apache) in front of the Document Server is required for
34+
production deployments to expose it over HTTPS.
3435

3536
.. toctree::
36-
:hidden:
3737

3838
installation_ubuntu
3939
installation_debian
4040
installation_docker
41-
42-
System requirements
43-
-------------------
44-
45-
- 4 GB RAM minimum (8 GB recommended for multi-user deployments)
46-
- 10 GB disk space minimum
47-
- The Document Server and Nextcloud must be able to reach each other over HTTPS in production
48-
49-
.. note::
50-
The Document Server does not need to run on the same host as Nextcloud.
51-
A reverse proxy (nginx or Apache) in front of the Document Server is required for production
52-
deployments so that the server is reachable over HTTPS.

0 commit comments

Comments
 (0)