Last updated: July 2026
This page describes the recommended setup path for the Euro-Office integration: a Euro-Office document server running with Docker and connected to i-net HelpDesk.
A compatible ONLYOFFICE server can also be used, but in this documentation it is the compatibility and fallback path, not the primary reference setup.
For new installations, this setup is recommended:
The following Docker Compose example starts HelpDesk, MariaDB, and the Euro-Office document server together on a shared network:
services: helpdesk: image: your-helpdesk-image:latest container_name: helpdesk restart: always ports: - "9000:9000" environment: - CONF_eurooffice__documentserver__url=https://documentserver.example.com - CONF_eurooffice__documentserver__internal_url=http://documentserver - CONF_eurooffice__helpdesk__internal_url=http://helpdesk:9000 - CONF_eurooffice__documentserver__jwt_secret=your-shared-jwt-secret - CONF_eurooffice__session_secret=your-session-signing-secret depends_on: - mariadb - documentserver mariadb: image: mariadb:10.11 container_name: helpdesk-mariadb restart: always environment: - MARIADB_ROOT_PASSWORD=root-password - MARIADB_DATABASE=helpdesk volumes: - mariadb_data:/var/lib/mysql documentserver: image: ghcr.io/euro-office/documentserver:latest container_name: documentserver restart: always environment: - JWT_ENABLED=true - JWT_SECRET=your-shared-jwt-secret - JWT_HEADER=Authorization - ALLOW_PRIVATE_IP_ADDRESS=true - ALLOW_META_IP_ADDRESS=false - PLUGINS_ENABLED=false volumes: - documentserver_data:/var/www/onlyoffice/Data - documentserver_logs:/var/log/onlyoffice volumes: mariadb_data: documentserver_data: documentserver_logs:
If you already have a HelpDesk installation and only want to add the document server, use this minimal setup:
services: documentserver: image: ghcr.io/euro-office/documentserver:latest container_name: documentserver restart: always ports: - "8080:80" environment: - JWT_ENABLED=true - JWT_SECRET=your-shared-jwt-secret - JWT_HEADER=Authorization - ALLOW_PRIVATE_IP_ADDRESS=true - ALLOW_META_IP_ADDRESS=false - PLUGINS_ENABLED=false volumes: - documentserver_data:/var/www/onlyoffice/Data - documentserver_logs:/var/log/onlyoffice volumes: documentserver_data: documentserver_logs:
Start the container:
docker compose up -d
The document server needs some time to start the first time. Check the health endpoint:
curl http://localhost:8080/healthcheck
The response should be true once the server is ready.
For the recommended Docker standard path, these values are typically relevant in HelpDesk:
https://documentserver.example.comhttp://documentserverhttp://helpdesk:9000More details about the fields are available on the Configuration page.
To configure the Euro-Office plugin in the HelpDesk container, use environment variables with the CONF_eurooffice__ prefix.
| Variable | Description | Example |
|---|---|---|
CONF_eurooffice__documentserver__url | Public document server URL for browser access | https://documentserver.example.com |
CONF_eurooffice__documentserver__internal_url | Internal URL for server-side downloads from HelpDesk to the document server | http://documentserver |
CONF_eurooffice__helpdesk__internal_url | Internal URL for downloads and callbacks from the document server back to HelpDesk | http://helpdesk:9000 |
CONF_eurooffice__documentserver__jwt_secret | Shared JWT secret | (shared secret) |
CONF_eurooffice__session_secret | Secret for signing HelpDesk session tokens | (fixed secret) |
| Variable | Description | Default |
|---|---|---|
JWT_ENABLED | Enable JWT authentication for callbacks and editor configurations | false |
JWT_SECRET | Shared secret for JWT token signing | (empty, JWT disabled) |
JWT_HEADER | HTTP header used for JWT transmission in callbacks | Authorization |
ALLOW_PRIVATE_IP_ADDRESS | Allow requests to private IP addresses | true |
ALLOW_META_IP_ADDRESS | Allow META IP address access | false |
PLUGINS_ENABLED | Enable document server plugins | false |
SECURE_LINK_SECRET | Secret for secure document links | (empty, disabled) |
URL_EXTENSION | URL extension pattern for incoming requests | / |
TZ | Container timezone | system default |
The document server must be reachable cleanly from three directions:
In the Docker standard case, this typically results in:
Browser Docker Docker
GET editor JS/API ────> documentserver:80
GET /office-editor ────> helpdesk:9000
HelpDesk (internal) ───> documentserver:80 (server-side file downloads)
DocumentServer ───> helpdesk:9000 (callbacks, content downloads)
If the document server runs on a different host or network, replace the internal Docker service names with real host names or IP addresses.
Example:
CONF_eurooffice__documentserver__internal_url=http://192.168.1.100 CONF_eurooffice__helpdesk__internal_url=http://192.168.1.200:9000
When HelpDesk runs natively on the same host as the Docker document server, http://host.docker.internal:9000 can be used as the internal HelpDesk URL. This allows the document server to call back to a non-containerized HelpDesk.
JWT authentication protects the communication between HelpDesk and the document server:
For production environments, JWT should be enabled.
If you want to use a compatible ONLYOFFICE server instead of Euro-Office, you can use the same overall setup. The main difference is the Docker image.
Replace this in the Compose example:
image: ghcr.io/euro-office/documentserver:latest
with:
image: onlyoffice/documentserver:latest
For further ONLYOFFICE-specific notes, see ONLYOFFICE on Windows.